2 part forth

1デフォルトの名無しさん
垢版 |
NGNG
第四世代
599デフォルトの名無しさん
垢版 |
2010/01/16(土) 15:33:34
http://www.h7.dion.ne.jp/~samwyn/forth/RetroLanguage.html
Retro (Forth) の和訳
http://www.h7.dion.ne.jp/~samwyn/forth/winconsole.zip
オリジナルのコンソール版仮想マシンを Windows 専用に移植したもの
TinyC のみでビルド可、TinyC の conio.h を利用
超応急措置的改変だが、文字列に日本語も使用可
ビルド済み EXE とオリジナルの retroImage も同梱
2010/03/11(木) 19:17:24
スレがなくて似たようなスレということでやってきたんだけど
postscriptの話題もOKですか?

forthはif文は逆ポーランドじゃないんですね
2010/03/12(金) 19:38:03
誰もいないし

カーペット敷いときますね

%!PS
/carpet {
dup 0 eq { pop 4 {dup 0 rlineto 90 rotate} repeat pop }
{
4 {
3 { 2 copy 1 sub exch 3 div dup 3 2 roll carpet 0 rmoveto } repeat
90 rotate
} repeat pop pop
}ifelse
}def
100 500 translate 0 0 moveto
300 3 carpet
stroke showpage
2010/03/23(火) 00:04:39
ttp://factorcode.org/
今死んでね?
2010/03/23(火) 00:58:37
中の小人が忙しいといってるな
2010/04/18(日) 17:43:19
FORTHって、ちょっとずつ作れてなんだか良いね。
関数とかじゃなくて、演算子を作りながら進んでる感じ。
2010/04/18(日) 23:45:47
のんびりのんびり(^。^)y-.。o○
2010/04/22(木) 05:05:43
何気にコンパイル = 2パスなところがミソなんだね。
最初IF文とか巧妙にスタックで実現しているのかと思った。
2010/04/28(水) 19:34:13
Factor 座談会
ttp://oss.infoscience.co.jp/factor/roundtable/
2010/06/15(火) 05:20:29
蔵書を整理していたら
マイコンピュータ No3
特集すぐ動くFORTH

などと言うものが出てきた、1981年の本なのでZ80とかApple向けの実装の話だったりする
思わずScanSnapで取り込んでしまった
2010/06/15(火) 17:04:11
リギー、かわいいよリギー
610デフォルトの名無しさん
垢版 |
2010/08/11(水) 11:24:30
age
611デフォルトの名無しさん
垢版 |
2010/12/28(火) 08:18:41
age

2010/12/28(火) 09:18:30
ムーア先生がさらにあさっての方向に。

http://www.greenarrays.com/

144コアのforthマシンとか誰得
2010/12/28(火) 09:43:38
いつものことじゃん
いちいち驚くなよ
614デフォルトの名無しさん
垢版 |
2010/12/31(金) 23:45:15
Ubuntu GNU/LINUX10.04を使ってます。

先日、倉庫を整理していたら「パソコン・ユーザのためのFORTH入門」(近代科学社)が
出てきました。懐かしいので、”Ubuntu FORTH”で検索してみてgFORTHの存在を知り
さっそくインストールしてみました。FORTHとの出会いはOh!MZの連載記事「掟やぶりの
magiFORTH」ですが、当時はSーOSを入力していなかったので実際にFORTHに触れる
のは今回が初めてです。

よろしくお願いします。

2011/01/01(土) 00:04:06
!omikuji
あけおめ
2011/01/01(土) 23:57:48
>>614
清水和人だったな、懐かしい
617デフォルトの名無しさん
垢版 |
2011/01/04(火) 08:09:35
>>616
「掟破りのmagiFORTH」は山田伸一郎さんの書いた記事でした。
1985年か1986年のOh!MZ 3月号に掲載されています。
2011/01/04(火) 20:00:48
>>617
おっとゴメン、もう記憶があやふやだわ
俺はLispの方にハマったな
こうもとやすひこの記事とか楽しく読んでいた
619デフォルトの名無しさん
垢版 |
2011/02/11(金) 21:03:43
>>13>>43
ForthとLISPの両方の特徴を生かした言語Laplasの論文
汎用簡易言語としてみたインタプリタ言語Laplas
http://ci.nii.ac.jp/els/110002895171.pdf?id=ART0003223525&type=pdf&lang=jp&host=cinii&order_no=&ppv_type=0&lang_sw=&no=1297425029&cp=
L a p 1 a s 一マイクロ・コンピュータに適した新らしい言語一
http://eprints.lib.hokudai.ac.jp/dspace/bitstream/2115/41966/1/130_145-156.pdf
2011/02/11(金) 21:15:45
日本語プログラミング言語Mind
http://mimizun.com/2chlog/tech/piza2.2ch.net/tech/kako/976/976753657.html

24 名前:名無しさん@お腹いっぱい。 :2000/12/21(木) 06:19
Forthやった後でLISP学ぶとすんげえわかりやすい。
簡易LISPってかんじ。

25 名前:名無しさん@お腹いっぱい。 :2000/12/21(木) 11:22
そういえば、 forth lisp + 2 / な言語が昔ASCIIに載ってた。ラプラスとかいう奴。
トンボグラフィックス(タートルグラフィックスの3D版)とか搭載してて面白かった。

26 名前:名前ついてますか? :2000/12/21(木) 22:51
あれは面白かった... lambdaとか使わなくても関数抽象できたし。
#原田さんはその後も変なものを作るので要注目

27 名前:奥さん、名無しです :2000/12/22(金) 04:24
>>26
え、それなにどうやってやるの。
621デフォルトの名無しさん
垢版 |
2011/02/11(金) 21:20:48
28 名前:名前ついてますか? :2000/12/22(金) 09:10
stackが前提だから (1 +) で (lambda (x) (+ x 1)) 相当。

うーん、closureつければ今でもいけないかしらん..

30 名前:名前ついてますか? :2000/12/25(月) 14:11
そうそう。といいつつ age

29 名前:名無しさん@お腹いっぱい。 :2000/12/22(金) 11:14
xを先にstackに置いといてからそのリスト置いてapplyってこと?

32 名前:29 :2000/12/26(火) 10:35
>>30
そうなのか。それだと関数抽象っていうより
アセンブラのウルテクみたいだな、って思った。

34 名前:名前ついてますか? :2000/12/27(水) 14:10
>>32 関数抽象なんて高尚な概念も stack levelに落として考えれば、
禁断の秘技程度なのです。って落ちじゃだめ?
# ちなみに同じ stack machine でも JavaVMじゃできない
>>26-27
原田 康徳さんの論文s
http://ci.nii.ac.jp/author?q=%E5%8E%9F%E7%94%B0%E5%BA%B7%E5%BE%B3
2011/02/11(金) 21:28:52
これか
ttp://ci.nii.ac.jp/naid/120001758800

「機関リポジトリ本文(無料)」ってリンクからたどってくとPDFで本文読めるな
623デフォルトの名無しさん
垢版 |
2011/02/11(金) 23:23:10
>>622
>>619の上のほうで示したリンク先「汎用簡易言語として見たインタプリタ言語Laplas」は
http://ci.nii.ac.jp/naid/110002895171
こっちで見れるね
2011/02/12(土) 00:27:43
SECD Machineみたいな、LispやMLを実装するすためのスタックマシンに自然なForthって感じか。
ざっとみたけど、lambdaはあっても、Closureはないみたいだな。
625デフォルトの名無しさん
垢版 |
2011/03/07(月) 10:54:59.82
だなw
626デフォルトの名無しさん
垢版 |
2011/05/28(土) 09:22:21.04
保守
2011/05/29(日) 07:57:22.03
いつのまにかWikipediaのMindの記事が大幅に書き換わってるな
2011/06/06(月) 07:09:36.69
おムーア様の過去の著作公開
ttp://www.colorforth.com/POL.htm
2011/07/02(土) 23:26:16.04
>>620
---------------------------
(((((((( 日本語プログラミング言語Mind ))))))))(キリ!!ッッ!!!!
------------------
((((((((((( え、それなにどうやってやるの。 )))))))))))(キリキリッッ!!!キリッキリッッッッ!!!!キリッッ!!!!ッッ!!!!
------(きリッ!


お前らってどうみてもゴミだよな
2011/07/30(土) 14:34:39.15
保守
2011/09/10(土) 06:58:08.33
時代はFORTH
2011/09/10(土) 23:29:07.15
forth出ても200超えられないorz
2011/10/12(水) 20:56:54.15
ttp://builds.factorcode.org/package?os=windows&cpu=x86.32
factorの新しいのきてるぅ
634デフォルトの名無しさん
垢版 |
2012/01/16(月) 22:00:32.22
保守
635営利利用に関するLR審議中@詳細は自治スレへ
垢版 |
2012/03/30(金) 23:52:09.58
factor(等のforth系)は頭がトコロテンになるな。
でもプログラミング自体をパズルとして楽しめるような気がする。
2012/06/26(火) 23:53:01.65
ttp://builds.factorcode.org/package?os=windows&cpu=x86.32
新しいのキター
2012/06/27(水) 01:49:33.00
スタックコンピュータって言う書籍買ってみた
古い本だけどFORTHとスタックマシンへの愛がすげー
2012/06/27(水) 07:17:19.22
おお、あれは名著だ。
2012/06/27(水) 10:13:02.11
>>636
初めてさわった
なにこれ、楽しい
640デフォルトの名無しさん
垢版 |
2012/06/28(木) 11:00:23.05
>638
原書はまだPDFで全公開してるのかな?
2012/06/28(木) 11:06:29.92
ttp://builds.factorcode.org/package?os=windows&cpu=x86.64
64bit版キター
2012/06/28(木) 11:09:24.65
>>640
ttp://www.ece.cmu.edu/~koopman/stack_computers/
643デフォルトの名無しさん
垢版 |
2012/06/30(土) 00:15:59.63
>>639
forth系ってパズル的な楽しさがあるよな
2012/06/30(土) 22:46:42.75
ttp://builds.factorcode.org/package?os=windows&cpu=x86.32
また新しいのキター
2012/07/03(火) 20:28:16.05
また来ましたな
バージョンアップ祭りの季節?
2012/07/10(火) 22:11:13.67
FORTHを学ぶサイトを作った - 西尾泰和のはてなダイアリー
http://d.hatena.ne.jp/nishiohirokazu/20120710/1341924363
2012/07/11(水) 23:13:14.19
またニューバージョンきたで
2012/07/12(木) 22:57:24.59
ttp://builds.factorcode.org/package?os=windows&cpu=x86.32
今日の更新
2012/07/14(土) 19:15:25.30
本当によくバージョンアップくるな
2012/07/15(日) 18:51:42.95
あ、きてる
2012/07/18(水) 15:12:10.06
毎度!
2012/07/19(木) 20:54:07.43
2012-07-17
2012/07/20(金) 14:00:53.36
2012-07-19
2012/07/20(金) 17:48:26.40
何だ何だ?
2012/07/20(金) 22:56:25.07
ttp://builds.factorcode.org/package?os=windows&cpu=x86.32
ニューバージョンが来たってことでしょ
2012/07/20(金) 23:55:48.43
うーん、それニューバージョンって言うものか?
一見するとリリースノートもないし、開発者向けにビルドし直したもので、
一般のユーザー向けに作られたものじゃないと推察するのだが。
本スレに書いてる人、何が変わったか把握してる?
2012/07/21(土) 09:31:12.80
ステマのにおい
2012/10/08(月) 20:25:47.38
.
659デフォルトの名無しさん
垢版 |
2012/10/11(木) 20:10:49.89
shuffle shuffle
2012/10/18(木) 19:40:10.82
test
2012/11/12(月) 06:30:53.31
 test
2012/11/12(月) 07:13:40.73
  test
2012/11/15(木) 22:25:43.78
a
a
a
a
2012/11/15(木) 22:28:35.87
   a
   a
   a
665デフォルトの名無しさん
垢版 |
2012/11/22(木) 22:57:21.32
666デフォルトの名無しさん
垢版 |
2013/03/06(水) 01:21:39.12
保守
何か面白い話題無いのかな
2013/03/06(水) 09:59:04.64
I think so.
2013/03/08(金) 11:11:43.39
Laplasの人自身による解説があった
http://blog.goo.ne.jp/viscuit/e/3ffb6c90b91f75911cef4198ee394c09
2013/03/08(金) 11:46:01.28
http://www.viscuit.com/
https://twitter.com/viscuit
2013/03/18(月) 01:17:00.32
>>117のコントロールフロースタックについてもうちょっと詳しく聞きたい
ジャンプ先って何へのジャンプ先?
2013/03/18(月) 01:23:17.50
あああちゃんと調べてなかった、ここの説明でわかったよ
http://www18.atwiki.jp/imops-forth/pages/34.html
2013/03/18(月) 19:30:42.45
forthの最大の欠点ってfactorみたいなオブジェクト指向にしたときにスタックに積んだ引数と関数の期待する型が違ったときに困る事だとおもうんだけど
コンパイラのレベルでこれってなんとかならんの?
2013/03/18(月) 22:45:55.67
普通の関数型言語と一緒じゃね?
全てのトークンに引数型と戻り値型を対応付けて、コンパイル時に
型解決すれば良いと思うけど。
2013/03/28(木) 01:26:47.80
Windows上のFactorで日本語表示させる方法がわからん
2013/03/28(木) 01:53:15.83
"日本語" H{ { font-name "メイリオ" } } format nl
で表示できた。
あとはlistenerのfont-nameを書き換えられたらいいのかな。
676デフォルトの名無しさん
垢版 |
2014/01/05(日) 03:24:36.20
保守
677デフォルトの名無しさん
垢版 |
2014/01/05(日) 21:15:32.75
保守!!!

Forth は実用に耐えるのですか?特に可読性的に
2014/01/05(日) 22:21:30.32
>>677
Forth の達人 (= プロの Forth 屋) なら、数十万行でも苦にならないそうな。
ライフゲーム
http://wiki.forthfreak.net/index.cgi?GameOfLife
BASIC インタプリタ
http://home.iae.nl/users/mhx/basic.frt
FALSE インタプリタとコンパイラ
https://github.com/benhoyt/false-forth
その他
http://wiki.forthfreak.net/index.cgi?ForthCode
http://wiki.forthfreak.net/index.cgi?

みんな目的に特化したプログラミングをするので、汎用ライブラリやフレームワークは無いに等しいけれどね
(個々の実装に特化したものならそれなりにあるけど)。
679デフォルトの名無しさん
垢版 |
2014/01/05(日) 23:08:26.86
thx

まさかこんなに早く返事がくるとは思わなかった!
2014/01/06(月) 05:54:37.02
常に人はいるんだわ

単に新しい話題がなんにもないだけで
681デフォルトの名無しさん
垢版 |
2014/01/06(月) 15:05:08.84
>>678
Forthの力ってすげー。

>>680
なる


おもしろそうだな。
RPNで文法が統一されているところが超COOLだ!
俺が作ってみようじゃないか?!

ちなみに慣例や伝統はしらぬから、
皆が想像しているものと大きく違うと思うがな!!
2014/01/06(月) 17:56:02.28
>>681 期待してます!
683デフォルトの名無しさん
垢版 |
2014/01/06(月) 20:20:59.69
文字列はどういう風に扱えばよいのですか?
2014/01/06(月) 21:14:53.59
>>683
文字数と文字列本体からなる構造体のアドレス(ポインタ)、とか。
2014/01/06(月) 22:41:12.49
日本語情報なら
http://www-lab.ee.uec.ac.jp/text/forth/
http://www.h7.dion.ne.jp/~samwyn/forth.htm
後者の Gforth マニュアル
http://www.h7.dion.ne.jp/~samwyn/forth/gforth/index.html
は「OS コマンドライン引数用ワード」まで訳してある (残りは未訳)。
また、ANS Forth ではない独自仕様だけども、
http://www.h7.dion.ne.jp/~samwyn/forth/RetroLanguage.html
http://www.h7.dion.ne.jp/~samwyn/forth/Ngaro.html
http://www.h7.dion.ne.jp/~samwyn/forth/retroimage.htm
も Forth 自体の実装を目論むなら参考になるかも (ちなみに現在の RetroForth はこれよりもう少し進化してる)。
2014/01/06(月) 23:19:19.70
>>683

684の追記ですが、素のFORTHだとスタックには数値しか置けないので
文字列のアドレスがスタックに積まれます。

もちろんFactorの様に、なんでもスタックに積めるのもアリです。

私もなんでも積めるように実装して、まぁうまく行ったのですが
>>672の方と同じ問題もあったので、スタックには数値しか置けない
実装も試してみたいと思っています。
2014/01/07(火) 09:04:59.98
ややこしい物は全部辞書に突っ込むとかの手も。
2014/01/07(火) 11:29:30.09
>>687
文字列等をワードの定義に置き換えてしまう、と言うことでしょうか?
この場合、最終的にスタックに積まれる物は何になるのでしょうか?
2014/01/07(火) 12:34:21.76
>>688の自己レスですが、辞書にと言うことは素FORTHの話だと思うので
文字列を辞書に登録後、そのアドレスがスタックへ積まれることになりますね。
690681
垢版 |
2014/01/13(月) 14:43:11.44
681です。
インタプリタでいいよね?
2014/01/15(水) 17:15:27.03
>>690
バイトコードとかスレッデッドコードインタプリタであればFORTHの普通過ぎると思う(誰もが一度はやる)
JIT(AnyCPU向け)実装とか,Factor見たいな構造をスタックに詰めるとかの部分をがんばらないとn番煎じになっちゃうから何か独自のがんばりが必要だと思うよ。

というかFactorが凄いのでアレ超えて欲しいな(アイデアだけでも)

OSSでがんばるならこっそりコントリビュートする人はこのスレにも多そうだからがんばれ!
2014/01/15(水) 23:01:48.08
最初はベタな書き方でいいと思う
693デフォルトの名無しさん
垢版 |
2014/01/16(木) 04:52:38.68
Forth で Forth を書くんだ
2014/01/17(金) 10:55:03.71
>>690
インタプリタだと、Forthの制御構造とかループが
意外とうまく行かなくて楽しいよ。

>>693
このスレの上の方にもありますが、Let over Lambdaでは
LispでForthを書いて、そのForthでLispを作ってますね。
2014/01/26(日) 21:50:03.79
forthインタプリタありすぎてどれを使えばいいかよく分からないけど
とりあえずgforth使っておけばいいのかな
2014/01/26(日) 22:12:55.38
とりあえずなら何使ってみてもいいと思うよ
2014/01/27(月) 11:46:12.62
自分でインタプリタ書いてみるのも良い
698デフォルトの名無しさん
垢版 |
2014/02/20(木) 20:29:49.07
http://forthfreak.net/jsforth80x25.html
2014/03/12(水) 13:38:35.60ID:ZbttMlJE
http://www.worldofspectrum.org/infoseek.cgi?regexp=^Forth-83$&pub=^Lennart+C.+Benschop$

Forth-83 の ZX Spectrum (欧州版 MSX1 のような Z80A 8 ビットパソコン) 版。
Forth-83_Extras.zip に Forth アセンブラ記述の実装ソースあり。FIG-Forth ベースらしく、最小限
のプリミティブワード以外は FIG-Forth と同じく Forth 自体で記述されてる。
レスを投稿する

5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況