2 part forth (909レス)
上下前次1-新
47: 04/02/10 16:13 AAS
天文シミュレーションのような
プログラムシミュレーション
programinginging..^.^.
48(1): 04/02/15 21:17 AAS
外部リンク[htm]:www.zetetics.com
OO な Forth っていっぱいあるねぇ。Prolog と Lisp と Forth で処理系の多さを
競ったら、どれがトップになるだろうか。
49(2): 04/02/16 06:25 AAS
Forthまんせー
2chスレ:tech
50(1): 04/02/17 23:29 AAS
>>48
LispとForthはToyプログラム的な処理系も含めると星の数ほど
あるからねぇ。Prologは知らないけれど。
ForthのOO拡張もいっぱいあるけど、forth好きな人には、
わずかなメモリの無駄や、実行速度のオーバーヘッドも
許せないってタイプが多い気がする。
(そして、やりすぎるとColorForthになる。。。)
省4
51(1): 04/02/18 00:21 AAS
>>50
基本的には同意なんだが。マクロと同等以上というほどメタプログラミング
的には勝ってないような…。昔 LISPer と競った経験から言うと、効率では
勝てると思うけど、記号処理(構文解析とか)入ってくると分が悪いと思われ。
FORTH ライク構文なら無敵だと思うけど。
52: 04/02/18 01:21 AAS
>>51
そうかな?「マクロ以上」は言い過ぎかもしれないけど、
>>49の多重ループの展開なんかは、マクロ並みの
抽象化だと思うけどな。
53: 04/02/18 03:39 AAS
いっちょ処理系でも作るか
54(1): 04/02/18 12:24 AAS
話題少ないし、おまいら、クイズで楽しみませんか?
第1問
dup ( a -- a a )
swap ( a b -- b a )
drop ( a -- )
>r ( a -- return stack: a )
r> ( return stack: a -- a )
省3
55: 04/02/18 12:25 AAS
第2問
同じく
3dup ( a b c -- a b c a b c )
を定義しる。
56(6): 04/02/18 12:27 AAS
第3問
: foo twice ." Hello" ;
でfooを実行すると
HelloHello
を出力するようなtwiceを定義してみれ。
57(1): 04/02/18 17:59 AAS
: 2dup >r dup r> dup >r swap r> ;
: 3dup >r 2dup r> dup >r swap >r swap r> r> ;
>>56
immediateを使う? よく思い出せん。
58: 54-56 04/02/18 19:06 AAS
>>57
2dup、3dup、お見事っす。
>>56はimmediateを使うという解答もアリですが、
immediateを使わないちょっとトリッキーだけど
もっとシンプルな方法があります。
59(3): 04/02/19 17:08 AAS
人少ないなぁ。
第4問
: AA reverse ." AA" ;
: BB AA ." BB" ;
: CC BB ." CC" ;
省4
60: 04/02/19 21:25 AAS
Forth のお勧め本ってどんなのありますか?
最近RPNに萌えてます。
HPの電卓欲しくなっちゃった。
61: 04/02/19 23:02 AAS
自分は「標準Forth」
外部リンク:www.amazon.co.jp
でForthを学んだんだけど絶版だろうね。
古本屋か図書館で探すしかないと思われ。
英語でも良ければ、
外部リンク[html]:home.iae.nl
ここのChapter 1から順に読んでいくのがオススメ。
62(4): 04/02/20 12:42 AAS
懲りずに第5問。
: foo
." 1 "
resume
." 2 "
resume
;
省17
63: 04/02/21 08:41 AAS
Mindって分家?単に日本語で書けるForth?
64: 04/02/21 10:29 AAS
MindはいろいろForthにない仕様があったので、
MindはForthから派生した別言語と考えても良いと思う。
65(2): _| ̄|○ 04/02/23 20:44 AAS
ホント、人が居ないyo....._| ̄|○
誰も見てないかもしれないけど解答編。
>>56
: twice r> dup >r >r ;
>>59
: reverse r> r> swap r> swap >r swap >r >r ;
>>62
省5
66(1): 04/02/24 14:02 AAS
>>65
スマン、しばらく見てなかった。
>>56はwordの最後までを二回ってことだったか。
次のwordだけを、かと勘違いしてた。
って>>62はそう書いてるな。
67: 04/02/25 12:33 AAS
>>66
>wordの最後までを二回ってことだったか。
わざと曖昧に書きますた。引っかけ問題のようなもので‥‥。
68: 04/03/24 03:33 AAS
浪なみ
69: 04/04/07 03:14 AAS
age
70: 04/04/08 03:12 AAS
mops for win 希望
71: 04/04/10 01:00 AAS
やっぱ判りにくいよこれ。
LISPはわかったんだが。。。
72: 04/04/10 01:09 AAS
慣れです。
73: 04/04/10 15:58 AAS
よくわからないけど、
スタック2本あるんだよね?
あとWordとExcelが入っているとか、いないとか。
正直よくわからない。
74: 04/04/10 16:00 AAS
それと、気になった事だけど、
>>65
人居ない、なんて連呼してると
ほんとに人いなくなるよ
もっと前向きに行こうよ
75: 04/04/10 20:12 AAS
了解。
76: 04/04/13 10:13 AAS
Chuck Mooreってチューリング賞もらってないよね?
threaded code発明したのってChuckでしょ?
77: 04/04/13 14:34 AAS
チューリング賞のことは知らないが、
threaded code発明したはChuck Mooreです。
78: 04/04/13 21:50 AAS
threaded codeってそんなに画期的なことなの?
Z80で言えば CD xx yy のCDを無くして、メモリ消費が約2/3になるってだけでしょ?
79: 04/04/13 23:10 AAS
外部リンク[html]:www.kt.rim.or.jp
80: 04/04/13 23:16 AAS
コードが小さくて速いので多くのVMがthreaded codeを採用している。
昔のプロセッサでは、アセンブリで書いたコードよりもForthのコードの
方が速かったことさえあるという。(伝説)
81: 04/04/14 18:53 AAS
速いのはいいんだけど、
コード読み書きがしんどいと思わない?
変数とかあまり使わないみたいだから、
フローを初めから追っていく必要あるし。
結局この言語もライブラリ次第かなと思った。
82: 04/04/15 00:05 AAS
逆ポーランドをむしろ好む人々も結構な数おりますが、
Stack Juggling がコードを読みにくくするという人も
います。
Forthコードの見通しを良くするには、他の言語よりも
かなり小さな単位でワードを定義するのがよろしいかと。
極端な話、1ワードはせいぜい5行までで記述し、
10行を超えるワードは分割すべきであるとか。
省3
83(1): 04/04/15 09:40 AAS
無限ループから抜け出す方法はありますか?
begin...againだと抜け出せないみたいなのですけど。
84: 04/04/15 12:08 AAS
>>83
ループ部分をワードに切り出してexitでワードごと抜けてください。
85: [age] 04/05/05 21:29 AAS
電脳書房の新着案内で「標準 FORTH」入ったっていうから見に行ったら
もうsold outですた。はやッ!
ちなみに漏れが持ってるFORTH本は「パソコンユーザのためのFORTH入門」
(A.ウィンフィールド著 寺島元章訳 1986年初版)
薄いけど、なかなか渋い良い本です。
ちょっと前まであまりなかったlisp本やsmalltalk本も最近は沢山でてるのにな。
forth本も出版してほしい。
86: 04/05/12 00:53 AAS
dayone
87: 04/05/13 01:02 AAS
昔からPostscriptが有名なんだからいいんじゃ
88: 04/05/13 01:03 AAS
ぜんぜん関係ないけどAdobeて最初聞いた時
病気の名前かと思った
89: 04/05/14 20:43 AAS
FORTHは、なんか団体が弱いイメージがある。
Adobeが中心になって盛り上げるかしれ。
AdobeってFORTH系言語で一番儲けてる会社だろ?
90(1): 04/05/17 20:13 AAS
AdobeのPostScriptって、FORTHとは似て非なる言語と聞きましたが。
(詳細はわからないです。ゴメソ)
団体が弱いっつーか、なんつーか、
「コアなマニアは熱狂的にFORTHを支持している」って噂は良く聞くけど、
その「コアなマニア」って一体ドコにいるのよ? って感じですね。
ググっても、今でも熱心にFORTHやってるサイト見つからないんですよね。
(数年全然更新されていないサイトとかは結構見つかる)
91: 04/05/17 22:20 AAS
マニアたちはcomp.lang.forthに巣食ってますが、
web siteは寒い状況。
92(1): 04/05/24 03:49 AAS
>>41
ムーアさんの思想詳細希望
93(1): 04/05/26 00:58 AAS
>>90
gforthとか、ベンチマークサイトで活躍してるとこぐらいしか見たことないね。
やっぱ、Schemeに対するSICPや、Perlのラクダ本みたいな有名所の良書が必要なのか。
それとも英雄が必要なのか。
94: 04/05/26 16:12 AAS
>>93
いい本があると、かなり違うかもね。
95(1): 04/05/26 21:19 AAS
>>92
外部リンク[html]:www.kt.rim.or.jp
しかしムーアタソは変なものを作るねぇ。
外部リンク[html]:www.kt.rim.or.jp
96: 95 04/05/26 21:24 AAS
下のリンクは間違い。
正しくは、外部リンク[htm]:www.eforth.com.tw
97: 04/05/27 12:58 AAS
俺の思うForthの偉い人
Chuck Moore
外部リンク:www.colorforth.com
M. Anton Ertl
外部リンク[html]:www.complang.tuwien.ac.at
Bernd Paysan
外部リンク[html]:www.jwdt.com
省2
98: [初かきこ] 04/06/06 06:49 AAS
遥か昔のByte誌でForth特集をやってるんですね
外部リンク[htm]:www.colorforth.com
99: 04/06/07 05:18 AAS
Forthで書かれたCやJavaなんてナンセンス
------------同じ理由で---------------
CやJavaで書かれたForthなんてナンセンス!
Forthは問題の解決に役立つツールを素早く作れる
だからプロトタイピングにとても向いている
GNU Forth? それはそれで結構だけれどね
小気味良く動く本来の持ち味は失われるだろう
100: 04/06/07 05:39 AAS
ANS/ISO標準化は結局のところ草の根Forth処理系を淘汰することにしか役に立たなかった
標準化で潤うのはForth社であり、開発効率が上がると考えた大企業、陸海空軍
やがて草の根の支持を失ったForthは全く廃れた・・・と少なからず思われているようだ
外部リンク[htm]:www.forth.com
101: 04/06/11 22:26 AAS
forth で国内ページをぐぐると、トップが厚生労働省ってのが悲しい。
2番目もプログラム言語とは全然関係ないし。
102: ジャパン [I guarantee] 04/06/12 13:15 AAS
婦女暴行事件 でぐぐると、トップに首相の名が現れる国です
103(3): 04/06/13 04:16 AAS
forthのソースが読みたいんですけど一番小さいのて何ですかね?
104: 04/06/13 05:43 AAS
>>103
: 2* DUP + ;
105(1): 04/06/13 06:02 AAS
移植の参考にしたいという意味ならコア・ワード数を最小限に絞ったeFORTH
いろいろな実行環境のソースが公開されているよ
元々は6502用に書かれたFigForthも小さいけどね
辞書構成にさまざまな形式があって、どちらも速度アップの余地ありってところ
106(1): 04/06/13 07:27 AAS
>105 ありがと
しかしアセンブラかきついなぁ
107(1): 04/06/13 09:09 AAS
>>106
習うより慣れろってやつじゃないの?
どれか動くForth系を触りながら中身を調べるって手もあるし
しかし、これだけH8が普及しているのに国内で移植したっていう例は無いのかな
H8 eFORTHのソースがあるんだから、ほとんどそのままで行けるハズ
関係ないけど、あのHPなんとかならんのかね・・・さくっと削除するとかさ
Forth Interest Group, Japan
108: 04/06/13 16:52 AAS
>107
確かにリンクしか存在せず更新もされない研究会てのもあるだけ無駄つうか
109: 04/06/13 17:11 AAS
だいたい本家サイトに無視されちゃってる
↓それに比べてエライ違いですね
外部リンク:www.figuk.plus.com
110: 04/06/14 09:13 AAS
>>103
これなんてどう? コンパクトな方だと思うけど。AVRなら命令セットが素直だし参考ってことで。
外部リンク[HTM]:www.cqpub.co.jp
ただ、これもそうなんだけど、世に言う「FORTHコンパイラ」は本来の自立した柔軟性に欠けるから手直しがいるだろうね。
本気でやるならATmegaなんかに載せると良さそう。セルフでフラッシュが書き込みできるから。確かH8はそこがサポートされてない。
111: 04/06/18 08:23 AAS
ATMELだと32ビットのARMが出てるね。
112: 04/06/18 11:32 AAS
アセンブラ関わる時点で移植性は捨てねばならん
113: 04/06/18 20:45 AAS
処理系の移植? 他言語でも移植時のアセンブラ記述はありだと思うけど。
リアルタイムアプリの移植にしてもそうだよね、部分的に使うだけかも知れないけどさ。
Forthでクロスコンパイルって移植技もあるみたいだけど詳しいことは判らないな。
114: 103 04/06/19 02:17 AAS
Gforthのソース見たけど結構Cで書かれてるね。
ヘタレなオレはCで書かれたForthもどきでも読んでみるよ
その前に図書館で見つけたFORTHへの招待でも読んで再勉強。
115: 04/06/19 19:22 AAS
キモは二本のスタックの実装とリンクリストやワードの構成でしょうね。
第三のスタックを使ったりとか、突っ込めばいろいろ奥深いものがありそうだけど。
何種類かあるカーネルの構造について詳しく解説されているページがあって
英文だけどかなり参考になると思う。最小限のアセンブラソース付きです。
外部リンク:www.zetetics.com
116: 04/06/25 00:32 AAS
あ〜ぁ、放置されちゃってスタックが埃まみれじゃん
117(2): 04/06/27 22:40 AAS
昔、漏れが晒したやつはデータスタックとリターンスタックのほかに
コンパイル時にジャンプ先アドレスを保存するために使うコントロールフロースタックの
3本構成でつくりますた。
118: 04/06/28 14:03 AAS
>>117
なるほど。コントロールフロースタックって何に使うのかと思ったら、そういう使い方をするんですね。さっそく採り入れてみようかな。
現在JSR型のものをワンチップCPUに移植中。データスタックとリターンスタックのどちらもトップを固定メモリーアドレス上に置いてます。かなり書き進んだところでハタと考えました。エディタは・・・どうしよう?
119: 04/07/13 12:39 AAS
さりげなく関連ページちゃんと書いてあるのな
120: [sage] 04/07/13 21:01 AAS
Amazon.com
forth の検索結果:4件
並べ替え:
1. 実用FORTHテクニック入門
西川 利男 (著)
出品者から通常2営業日以内に発送
【マーケットプレイス】 新品/ユースド価格 : ¥1,300
121: 04/07/14 07:27 AAS
日本語プログラミングコンテスト実行委員会
実行委員長 審査委員会 審査委員長
西川利男(科学ライタ、元工業技術院主任研究官)
実行委員 片桐 明(スクリプツ・ラボ代表)
122(1): 04/07/16 22:20 AAS
詳しいひといるう?
ワードの仕組み(仕様)教えてよ
123(1): 04/07/16 22:59 AAS
>>122
あんまり詳しくないけど、どういう処理系のどんなワードの仕様か
書けば答えてくれる人もいるかも。
124(1): 04/07/16 23:20 AAS
>>123
処理系を作ろうと思っているんですが、辞書から探すのに効率のいい
ワードの仕様ってどんなんだろうと
思って聞いたんですけど、
外部リンク:www-lab.ee.uec.ac.jp
ここ参考にしてやってみることにしました。
125(1): 04/07/17 02:43 AAS
>>124
資料は79年標準仕様のものなので、現在の94年版も併せて参考にするのが良いと思う。
FORGETのように消えているワードがあったりする。DPANS94で検索すると出て来ます。
79年標準はFIG-FORTH 6502版を下敷きにしているから、そのソースも探してみると良い。
スタックの実現や、ワードや辞書の構造は処理系ごとに自由が認められているので
実際のところ自分がスマートだと考える仕様がベスト。
126(1): 04/07/18 19:11 AAS
crを完全にスペースに置き換えた場合(全てのワードを即時実行にする)、
何か弊害あります?
127: 04/07/18 20:57 AAS
>>125
FORGET は旧式の拡張ワードとして未だ生きながらえているね。
新ワードは MARKER。前もって、MARKER word としてヘッダーを作っておいて
後の実行時に word cr でヘッダー以後のワードを消し去るという使い方。
変数をプログラムメモリと別の領域に置く方式への配慮という感じがする。
上下前次1-新書関写板覧索設栞歴
あと 782 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.021s