1read 100read
2012年08月プログラム107: 2 part forth (665) TOP カテ一覧 スレ一覧 2ch元 削除依頼
【モダン推奨】Perlについての質問箱 50箱目 (398)
【3DS】プチコンを語るスレ【DSi】 (662)
★初心者にVisual C++を教えるスレ★ Part38 (690)
雑談スレ 4 (862)
NullPointerExceptionを「ぬるぽ」と呼ぶスレ6 (390)
★初心者にVisual C++を教えるスレ★ Part38 (690)

2 part forth


1 :04/01/10 〜 最終レス :2012/11/22
第四世代

2 :
参考リンク
http://lab.ee.uec.ac.jp/text/treat6s.html
http://www.geocities.jp/naosacra/index.html

3 :
hoshu

4 :
ほっしゅ
つーか誰もいねえな

5 :
いまや衰退してしまった FORTH に対してムーアが、
── FORTH にすまないことをした。あやまらなくてはならない。
と、しんみり言った言葉が胸を打つ。
林 晴比古 著、オペラ座のパソコン、初版 P.123



作成者がこう言ってるんだから、もう終了でいいんじゃない ?

6 :
OpenFirmwareとか地味に使ってるじゃないすか

7 :
しかしmopsスレの住人とかどこにいったんだろう?
タイトルのつけかたがまずかったな…。

8 :
一時期興味があったが冷めてしまったなぁ。今は関数型言語が楽しい。
何か面白い話題でもあると良いんだけど。

9 :
何か作るかあ。

10 :
forthの特徴は関数型とか述語記述とかそういう次元の話ではなくて
ただ単に逆ポーランド表記である と見た場合、そこに新たにオブジェクト指向だとか
いろいろな概念を付け加えるのは案外容易なのかなと考えているのですがどうだろうか

11 :
>>10
昔laplaceってのがあったなぁ。

12 :
>>11
なんスかそれ?ラプラス変換?

13 :
ASCIIに載ってたFORTHの変種なんだけど、よく覚えてない。
リストが扱えるようになってたような気がする。

14 :
ふむ…。
web上にはそれに関するリソース見つけきれないです。
もう少し探してみよう。
検索の過程でなんとなくひっかかった情報達
ttp://mizotec.s27.xrea.com/slang/overview.html
ttp://www.kt.rim.or.jp/〜tyamamot/forth/c4th.html
ttp://homepage2.nifty.com/logic/
ttp://www.kt.rim.or.jp/〜tyamamot/forthj/forthj.html
prologとかなり親和性が高い様な気がするなあ

15 :
保守っておこう

16 :
最低でも実装しなければいけない命令ってどれぐらいあるだろうか?

17 :
着手 age

18 :
保守 sage

19 :
開発中 保守 sage

20 :
誰か助けてヨ

21 :
最近勉強を始めてみようと gforth 導入しますた・・・
寂れてますね・・・

22 :
ですね(^^)

23 :
ttp://directory.google.com/Top/Computers/Programming/Languages/Forth/
を巡っております。
ttp://webdev.amsystech.com/mlosh/
ここのソースを参考にして処理系作ろうかと思案中。

24 :
hoth

25 :
forthはおもしろい言語だとは思うんだが、
何に使うかが問題だよね。
自作アプリにスクリプトを付けるなんて用途には最適かもね。
コアな部分がCで数十ライン、デフォルトのワードを100個内蔵しても
1Kラインで済んだし。

26 :
ユーザに書かせるスクリプトじゃなくて、内部で処理するバイトコードが
FORTH系ってのは結構あるんじゃないかと。
処理系の高機能化と簡素化を両立する手段のひとつとして。

27 :
>>14のttp://www.kt.rim.or.jp/〜tyamamot/forth/c4th.htmlは
ちょっと電波臭いけど面白いと思う。

28 :
>>26
スタックマシンということなら、JVMとか。

29 :
>>25
あぷ

30 :
http://pc2.2ch.net/test/r.i/tech/1070886635/60

31 :
あげ

32 :
>>29
アップした。
homepage.mac.com/holythunderforce/FileSharing1.html

33 :
>>32
ダウソ出来んばい

34 :
むか〜し、MZ80でForthを走らせてたのを思い出した。懐かしい

35 :
どっか上げられるウプローダ知らない?

36 :
ダウソできたよ

37 :
盛り上がらねーな

38 :
ホッ種

39 :
>>28
JVMってJavaのVMのこと?
ありゃFORTHとはぜんぜん違うよ。
ところで
コンソールから読み込んだFORTHの構文をJava VMのマシン語に
コンパイルしつつ、
メモリに書き込んでそこにジャンプして実行ってのを考えたりも
したんだけど....。
まずPCレジスタが公開されてない。PCいじるインストラクションがあったとしても、
クラスローダーが認めた由緒正しいインスタンス以外のオフセットに
ジャンプすると例外が発生するとかの仕様がある。
ハックできなそう。つか、できない。
つまらん、と思ってJavaの勉強やめた。

40 :
おまえらforthでEmacsを作れ

41 :
ムーアさんの思想とはかけはなれてるな

42 :
スレタイわかりにくすぎ>1

43 :
>>11
ラプラスって、確かLisp+Forthだったみたいだけど、ちゃんと読む前にアスキーを捨てられて詳細が解らんです。でも確かに有りました。私も詳細が知りたい。

44 :
マジでforthで何かつくりたいんだけど、
何かネタないかね。
40が言うようにエディタ?

45 :
仕様書
FORTHコンパイラを内蔵し、それ自体がFORTH実行環境であり
FORTHにより拡張可能なエディタ。
仮想敵をEmacsとし、Emacsで可能なことはすべて実現させることを
最終目標とする。
ただしキーバインドはWordStar準拠とする。
あとはよろしく

46 :
WordStar入れるならWindows標準のキー定義も入れてくれ
ところでFORTHの場合FFI関係の作りは楽なのかな

47 :
天文シミュレーションのような
プログラムシミュレーション
programinginging..^.^.

48 :
http://www.zetetics.com/bj/papers/oofs.htm
OO な Forth っていっぱいあるねぇ。Prolog と Lisp と Forth で処理系の多さを
競ったら、どれがトップになるだろうか。

49 :
Forthまんせー
http://pc2.2ch.net/test/read.cgi/tech/1074996153/159-175nofirst

50 :
>>48
LispとForthはToyプログラム的な処理系も含めると星の数ほど
あるからねぇ。Prologは知らないけれど。
ForthのOO拡張もいっぱいあるけど、forth好きな人には、
わずかなメモリの無駄や、実行速度のオーバーヘッドも
許せないってタイプが多い気がする。
(そして、やりすぎるとColorForthになる。。。)
>>49
速度もマンセーだが、マクロと同等以上の、
抽象化能力を持つForthマンセー。
メタプログラミングマンセー。


51 :
>>50
基本的には同意なんだが。マクロと同等以上というほどメタプログラミング
的には勝ってないような…。昔 LISPer と競った経験から言うと、効率では
勝てると思うけど、記号処理(構文解析とか)入ってくると分が悪いと思われ。
FORTH ライク構文なら無敵だと思うけど。

52 :
>>51
そうかな?「マクロ以上」は言い過ぎかもしれないけど、
>>49の多重ループの展開なんかは、マクロ並みの
抽象化だと思うけどな。

53 :
いっちょ処理系でも作るか

54 :
話題少ないし、おまいら、クイズで楽しみませんか?
第1問
dup ( a -- a a )
swap ( a b -- b a )
drop ( a -- )
>r ( a -- return stack: a )
r> ( return stack: a -- a )
以上5つのワードだけで、
2dup ( a b -- a b a b )
を定義すれ。

55 :
第2問
同じく
3dup ( a b c -- a b c a b c )
を定義しる。

56 :
第3問
: foo twice ." Hello" ;
でfooを実行すると
HelloHello
を出力するようなtwiceを定義してみれ。


57 :
: 2dup >r dup r> dup >r swap r> ;
: 3dup >r 2dup r> dup >r swap >r swap r> r> ;
>>56
immediateを使う? よく思い出せん。

58 :
>>57
2dup、3dup、お見事っす。
>>56はimmediateを使うという解答もアリですが、
immediateを使わないちょっとトリッキーだけど
もっとシンプルな方法があります。

59 :
人少ないなぁ。
第4問
: AA reverse ." AA" ;
: BB AA ." BB" ;
: CC BB ." CC" ;
でCCを実行すると
CCBBAA
を出力するようなreverseを定義すれ。
‥‥‥実はコレ第3問のヒントだったりする。


60 :
Forth のお勧め本ってどんなのありますか?

最近RPNに萌えてます。
HPの電卓欲しくなっちゃった。

61 :
自分は「標準Forth」
http://www.amazon.co.jp/exec/obidos/ASIN/4320022475/ref=sr_aps_b_/249-4245738-4019557#product-details
でForthを学んだんだけど絶版だろうね。
古本屋か図書館で探すしかないと思われ。
英語でも良ければ、
http://home.iae.nl/users/mhx/sf.html
ここのChapter 1から順に読んでいくのがオススメ。

62 :
懲りずに第5問。
: foo
  ." 1 "
  resume
  ." 2 "
  resume
;
: bar
  ['] foo call/cc
  ." 3 "
  resume
  ." 4 "
  drop
;
で、barを実行すると、
1 3 2 4
と表示するような、resumeとcall/ccをがんがって定義してみれ。
ちなみに、この2つのワードは以下のスタックコメントに示すような
引数と返り値を持つものとする。
resume ( continuation -- continuation' )
call/cc ( xt -- continuation )
# ワード名とスタックコメントの名前がアレですが、
# 字面に惑わされなければ、仕様を満たすのは簡単なはず。
# 第3問〜第5問は基本的に同じカラクリ、というのがヒント。

63 :
Mindって分家?単に日本語で書けるForth?

64 :
MindはいろいろForthにない仕様があったので、
MindはForthから派生した別言語と考えても良いと思う。

65 :
ホント、人が居ないyo....._| ̄|○
誰も見てないかもしれないけど解答編。
>>56
: twice r> dup >r >r ;
>>59
: reverse r> r> swap r> swap >r swap >r >r ;
>>62
: resume r> swap >r ;
: call/cc r> swap execute ;
‥‥リターンスタックをいじるとヘンなことができて面白いよね。
‥‥‥‥‥。
_| ̄|○


66 :
>>65
スマン、しばらく見てなかった。
>>56はwordの最後までを二回ってことだったか。
次のwordだけを、かと勘違いしてた。
って>>62はそう書いてるな。

67 :
>>66
>wordの最後までを二回ってことだったか。
わざと曖昧に書きますた。引っかけ問題のようなもので‥‥。

68 :

 浪なみ

69 :
age

70 :
mops for win 希望

71 :
やっぱ判りにくいよこれ。
LISPはわかったんだが。。。

72 :
慣れです。

73 :
よくわからないけど、
スタック2本あるんだよね?
あとWordとExcelが入っているとか、いないとか。
正直よくわからない。

74 :
それと、気になった事だけど、
>>65
人居ない、なんて連呼してると
ほんとに人いなくなるよ
もっと前向きに行こうよ

75 :
了解。

76 :
Chuck Mooreってチューリング賞もらってないよね?
threaded code発明したのってChuckでしょ?

77 :
チューリング賞のことは知らないが、
threaded code発明したはChuck Mooreです。


78 :
threaded codeってそんなに画期的なことなの?
Z80で言えば CD xx yy のCDを無くして、メモリ消費が約2/3になるってだけでしょ?

79 :
http://www.kt.rim.or.jp/~tyamamot/forthj/threaded-codej.html

80 :
コードが小さくて速いので多くのVMがthreaded codeを採用している。
昔のプロセッサでは、アセンブリで書いたコードよりもForthのコードの
方が速かったことさえあるという。(伝説)

81 :
速いのはいいんだけど、
コード読み書きがしんどいと思わない?
変数とかあまり使わないみたいだから、
フローを初めから追っていく必要あるし。
結局この言語もライブラリ次第かなと思った。

82 :
逆ポーランドをむしろ好む人々も結構な数おりますが、
Stack Juggling がコードを読みにくくするという人も
います。
Forthコードの見通しを良くするには、他の言語よりも
かなり小さな単位でワードを定義するのがよろしいかと。
極端な話、1ワードはせいぜい5行までで記述し、
10行を超えるワードは分割すべきであるとか。
スタックコメントを活用し、小さなTestを繰り返し
ながらボトムアップにくみ上げていくと意外に、
スタックだけで問題解決できていたりします。


83 :
無限ループから抜け出す方法はありますか?
begin...againだと抜け出せないみたいなのですけど。

84 :
>>83
ループ部分をワードに切り出してexitでワードごと抜けてください。

85 :
電脳書房の新着案内で「標準 FORTH」入ったっていうから見に行ったら
もうsold outですた。はやッ!
ちなみに漏れが持ってるFORTH本は「パソコンユーザのためのFORTH入門」
(A.ウィンフィールド著 寺島元章訳 1986年初版)
薄いけど、なかなか渋い良い本です。
ちょっと前まであまりなかったlisp本やsmalltalk本も最近は沢山でてるのにな。
forth本も出版してほしい。

86 :
dayone

87 :
昔からPostscriptが有名なんだからいいんじゃ

88 :
ぜんぜん関係ないけどAdobeて最初聞いた時
病気の名前かと思った

89 :
FORTHは、なんか団体が弱いイメージがある。
Adobeが中心になって盛り上げるかしれ。
AdobeってFORTH系言語で一番儲けてる会社だろ?

90 :
AdobeのPostScriptって、FORTHとは似て非なる言語と聞きましたが。
(詳細はわからないです。ゴメソ)
団体が弱いっつーか、なんつーか、
「コアなマニアは熱狂的にFORTHを支持している」って噂は良く聞くけど、
その「コアなマニア」って一体ドコにいるのよ? って感じですね。
ググっても、今でも熱心にFORTHやってるサイト見つからないんですよね。
(数年全然更新されていないサイトとかは結構見つかる)

91 :
マニアたちはcomp.lang.forthに巣食ってますが、
web siteは寒い状況。

92 :
>>41
ムーアさんの思想詳細希望

93 :
>>90
gforthとか、ベンチマークサイトで活躍してるとこぐらいしか見たことないね。
やっぱ、Schemeに対するSICPや、Perlのラクダ本みたいな有名所の良書が必要なのか。
それとも英雄が必要なのか。

94 :
>>93
いい本があると、かなり違うかもね。

95 :
>>92
ttp://www.kt.rim.or.jp/~tyamamot/forth/c4th.html
しかしムーアタソは変なものを作るねぇ。
ttp://www.kt.rim.or.jp/~tyamamot/forth/c4th.html

96 :
下のリンクは間違い。
正しくは、ttp://www.eforth.com.tw/academy/chips/mup.htm

97 :
俺の思うForthの偉い人
Chuck Moore
http://www.colorforth.com/
M. Anton Ertl
http://www.complang.tuwien.ac.at/projects/forth.html
Bernd Paysan
http://www.jwdt.com/~paysan/index.html
Mike Hore
http://www.powermops.org/

98 :
遥か昔のByte誌でForth特集をやってるんですね
http://www.colorforth.com/byte.htm

99 :
Forthで書かれたCやJavaなんてナンセンス
------------同じ理由で---------------
CやJavaで書かれたForthなんてナンセンス!
Forthは問題の解決に役立つツールを素早く作れる
だからプロトタイピングにとても向いている
GNU Forth? それはそれで結構だけれどね
小気味良く動く本来の持ち味は失われるだろう

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼
★初心者以前の質問に雪崩のように答えるスレ★ (314)
【R】configure大嫌い【RMS】 (501)
Embarcadero RAD Studio/Delphi/C++Builder その3 (570)
main以外★mallocの後にfree不要と言うバカいるの? (374)
【入門】Common Lisp その9【質問よろず】 (685)
【GUI】wxWidgets(旧wxWindows) その5【サイザー】 (507)
--log9.info------------------
【折り畳み】フォールディングナイフ Part3 (935)
鉋、鑿の攻略しようぜ!! (947)
刃物輸入・輸出体験スレ 2 (719)
最先端★ウォーレントーマス★ナイフ (333)
Buck Part3 (262)
100円ショップで買える刃物 (518)
日本のナイフ好き嫌い思想 (402)
★OFF・アウトドアで使うナイフを語るスレ★第二夜 (416)
欲しいナイフ名を書き、我慢するスレpart2 (649)
SOGを語ろう! (560)
ナイフ関連のブログ・HPをヲチするスレ (222)
オピネル(OPINEL) 05 (318)
大型ナイフ その2 (360)
グローバル GLOBAL (256)
【真っ二つ】あのナイフとの別れ【紛失】 (320)
中国ナイフスレ (496)
--log55.com------------------
【在日韓国人犯罪】「手を引っかかれた!」 日本行きの韓国航空機で韓国籍の男が女性乗務員を暴行…韓国ネットから非難の嵐[03/22]
【韓国】 1912年、日本が済州から韓国桜を盗んできて、米国に送った。 済州王桜、ワシントンとの平和文化の架け橋に★3
【国際】 北朝鮮が日本を非難 「変態的な性的快楽を追求して、東京の都心で世界にない高齢者遊郭まで運営」
【反日メディア】朝日新聞 「もう一度言う。信頼を失った政権が論じても国民の理解は得られない」ネット「鏡に向かって言ってるのか」
【話題】津田大介「中韓本を出版することは差別につながる。差別を固定化する」 ★2
【K-POP】Red Velvet、PVには「ジャップ」や「広島原爆」など日本を侮蔑する言葉も…ネット「反日なのに、なぜ日本でデビュー?」[4/2]
【インドネシア】中国の高速鉄道、市長から「建設が遅すぎる」と責められる=中国メディア[04/06]
【韓国起源】 米国ワシントンでも桜祭り...桜の元祖は?[04/06]