2 part forth

このエントリーをはてなブックマークに追加
660デフォルトの名無しさん:2012/10/18(木) 19:40:10.82
test
661デフォルトの名無しさん:2012/11/12(月) 06:30:53.31
 test
662デフォルトの名無しさん:2012/11/12(月) 07:13:40.73
  test
663デフォルトの名無しさん:2012/11/15(木) 22:25:43.78
a
a
a
a
664デフォルトの名無しさん: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
保守
何か面白い話題無いのかな
667デフォルトの名無しさん:2013/03/06(水) 09:59:04.64
I think so.
668デフォルトの名無しさん:2013/03/08(金) 11:11:43.39
Laplasの人自身による解説があった
http://blog.goo.ne.jp/viscuit/e/3ffb6c90b91f75911cef4198ee394c09
669デフォルトの名無しさん:2013/03/08(金) 11:46:01.28
670デフォルトの名無しさん:2013/03/18(月) 01:17:00.32
>>117のコントロールフロースタックについてもうちょっと詳しく聞きたい
ジャンプ先って何へのジャンプ先?
671デフォルトの名無しさん:2013/03/18(月) 01:23:17.50
あああちゃんと調べてなかった、ここの説明でわかったよ
http://www18.atwiki.jp/imops-forth/pages/34.html
672デフォルトの名無しさん:2013/03/18(月) 19:30:42.45
forthの最大の欠点ってfactorみたいなオブジェクト指向にしたときにスタックに積んだ引数と関数の期待する型が違ったときに困る事だとおもうんだけど
コンパイラのレベルでこれってなんとかならんの?
673デフォルトの名無しさん:2013/03/18(月) 22:45:55.67
普通の関数型言語と一緒じゃね?
全てのトークンに引数型と戻り値型を対応付けて、コンパイル時に
型解決すれば良いと思うけど。
674デフォルトの名無しさん:2013/03/28(木) 01:26:47.80
Windows上のFactorで日本語表示させる方法がわからん
675デフォルトの名無しさん: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 は実用に耐えるのですか?特に可読性的に
678デフォルトの名無しさん: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

まさかこんなに早く返事がくるとは思わなかった!
680デフォルトの名無しさん:2014/01/06(月) 05:54:37.02
常に人はいるんだわ

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

>>680
なる


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

ちなみに慣例や伝統はしらぬから、
皆が想像しているものと大きく違うと思うがな!!
682デフォルトの名無しさん:2014/01/06(月) 17:56:02.28
>>681 期待してます!
683デフォルトの名無しさん:2014/01/06(月) 20:20:59.69
文字列はどういう風に扱えばよいのですか?
684デフォルトの名無しさん:2014/01/06(月) 21:14:53.59
>>683
文字数と文字列本体からなる構造体のアドレス(ポインタ)、とか。
685デフォルトの名無しさん: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 はこれよりもう少し進化してる)。
686デフォルトの名無しさん:2014/01/06(月) 23:19:19.70
>>683

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

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

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

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

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

>>693
このスレの上の方にもありますが、Let over Lambdaでは
LispでForthを書いて、そのForthでLispを作ってますね。
695デフォルトの名無しさん:2014/01/26(日) 21:50:03.79
forthインタプリタありすぎてどれを使えばいいかよく分からないけど
とりあえずgforth使っておけばいいのかな
696デフォルトの名無しさん:2014/01/26(日) 22:12:55.38
とりあえずなら何使ってみてもいいと思うよ
697デフォルトの名無しさん:2014/01/27(月) 11:46:12.62
自分でインタプリタ書いてみるのも良い
698デフォルトの名無しさん:2014/02/20(木) 20:29:49.07
699デフォルトの名無しさん:2014/03/12(水) 13:38:35.60 ID: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 自体で記述されてる。
700デフォルトの名無しさん:2014/03/12(水) 17:03:35.35 ID:f26liuj5
あの頃のPCに標準装備されてるのがゲイツBASICでなくてForthだったらPC世界は今とは随分違ったものになってただろうな。
701デフォルトの名無しさん:2014/03/12(水) 17:20:04.88 ID:w2TVy3P1
>>700
カシオの電卓もきっとRPNに!

BASICってコンピュータが何をしてくれるのかを学ぶのには適してるとおもうけどなあ
FORTHもそうだけどREPL環境のあるコンピュータ言語だとBASIC,FORTH,LISPの御三家があるけど、どれが一番よかったんだろう?
702デフォルトの名無しさん:2014/03/12(水) 17:26:49.46 ID:EfiLuccu
Lispがベストだが、いかんせん大食らい過ぎる。
Forthも悪くない。

Basicの奴はREPLのようなREPLでないような微妙なコマンドラインだしなぁ。
703デフォルトの名無しさん:2014/03/12(水) 17:41:55.19 ID:w2TVy3P1
>>702
実マシンのメモリモデル的にはBASICが一番合う気がするんだよね。
で関数定義を基本とするならLISPが一番。(引数と関数の関係が一目瞭然なので)
で、FORTHだとFACTORみたいにオブジェクトとメッセージみたいな含みができれば最高なのにという感じ
という個人的な感想をもっちゃう。
>Basicの奴はREPLのようなREPLでないような微妙なコマンドラインだしなぁ。
forgetで+とか以降を消して涙目とかは流石にBASICじゃできないと思うのでそこら辺のシステム空間とユーザ空間みたいな区別はあっても良いかもしれない
704デフォルトの名無しさん:2014/06/02(月) 08:19:32.29 ID:bzg7kW0W
組込み試作品に使える言語を探していて、Forthに行き当たった。
ZigBee、Raspberry Piなんだが、Forthはこういうの苦手なんだろうか?
705デフォルトの名無しさん:2014/06/03(火) 01:33:51.03 ID:pa2cdK6+
>>704
そんなこたないんだが、arm用に特化したforth処理系ってのが存在しないのも事実なのでなんと言えばいいんだろうか。
ちなみに特化しなくても何とかなっちゃうのがforthの良い所だったり、何も無いところから作り込んでもそんなに手間じゃなかったりするのも魅力だったりする。
でもRaspberry PiみたいなLinuxが動いちゃう環境ならforth使う理由が殆どないよ。
むしろ生の機械語を直接書かないと駄目なような環境に向いてる。
706デフォルトの名無しさん:2014/06/03(火) 11:48:06.91 ID:XzYLHg3E
raspberry pi forth でググったらなんか出てくるみたいだが。

というか、rasp pi 衰退したOSや言語の敗者復活リングみたいになっててオモロイw
707デフォルトの名無しさん:2014/06/04(水) 16:39:08.74 ID:2ij5JthN
708デフォルトの名無しさん:2014/08/13(水) 10:22:44.64 ID:MV0il0Eo
★2ch勢いランキングサイトリスト★

☆ +ニュース板
・ 2NN
・ 2chTimes
☆ +ニュース板新着
・ 2NN新着
・ Headline BBY
・ Unker
☆ +ニュース板他
・ Desktop2ch
・ 記者別一覧
☆ 全板
・ 全板縦断勢いランキング
・ スレッドランキング総合ランキング
☆ 実況板
・ 2勢
・ READ2CH
・ i-ikioi

※ 要サイト名検索
709デフォルトの名無しさん