2 part forth (907レス)
1-

808: 2016/04/29(金)00:42 ID:T+fk1/ws(1)調 AAS
それに比べMPEときたら。。。
809
(1): 2016/04/30(土)13:33 ID:+u6TG0xk(1)調 AAS
>>807
なにをもって対応というのか知らんがFPGAを使ったソリューションはあるね
810
(1): 2016/05/03(火)01:28 ID:3SS4lwd4(1)調 AAS
XTがImmediateかどうか調べるワードってある?
811: 2016/05/03(火)13:54 ID:nk6XRDP5(1)調 AAS
>>809
forthでfpgaの回路組めるとかだったら面白いなw
812: 2016/05/06(金)02:21 ID:FS8HTadE(1/2)調 AAS
いま逆ポーランド記法で書ける正規表現エンジンを作ろうか考えているんだけどAB*C|こんな感じにね
もうすでにあったりするんだろうか?あForth上でね?教材としてあるのは知っているから
Forthのもつ動的コンパイルを利用することで高移植性のJITエンジンが実装できると思ってね
( 自らをコンパイルすることができる言語はこういったスクリプトやインタプリタを移植性を保ったまま簡単に高速化できるところが素晴らしいよね)

エグって呼んで〜
813: 2016/05/06(金)02:23 ID:FS8HTadE(2/2)調 AAS
>>810
たぶん標準ではないな
文字列ベースならFINDがあるんだけどね
814: 2016/05/31(火)01:39 ID:NOiY1sCF(1)調 AAS
forthに足りないのはコマンド言語だ。
forthのプロシージャー呼び出しはすべてディクショナリ内に限られるため外部プログラムを効率よく利用できない。
シェルスクリプトのように外部forthプログラムをうまく呼び出す機構があればいいが。。。
スタックをパイプのようにプログラムで共有するとおもしろいかもしれない。
815
(1): 2016/10/07(金)16:43 ID:oA26EQDq(1/3)調 AAS
gforthで実数演算たとえば、
1.0 +2.0
の様なものをしたいのですが、
1.0e0 2.0e0 + .
としても
1.0e0 2.0e0 f+ .
としても結果が得られません。
実数演算はどうすればいいのでしょうか。
ご教示お願いいたします。
816
(2): 2016/10/07(金)17:47 ID:ah4nbj/y(1)調 AAS
http://www.h7.dion.ne.jp/~samwyn/forth/gforth/Floating-Point-Tutorial.html
817
(1): 2016/10/07(金)19:28 ID:oA26EQDq(2/3)調 AAS
>>816
これは、読んだのですが、実例が初心者には敷居が高くて
よく理解できません。
2.0 + 3..0 のような簡単な例を示した物は
ないでしょうか。
818: 2016/10/07(金)23:18 ID:oA26EQDq(3/3)調 AAS
>>817
結局、FACTORに乗り換えました。
こちらの方が判り易くて、すぐ実数演算(浮動小数点演算)ができるように
なりました。
819: 2016/10/09(日)06:39 ID:pfNs/KcX(1)調 AAS
週明け、ちょっと面白いforthの論文読めるかもしれない。
forthっていうより、その上に作られたkevoって風変わりなOOP言語のだけどさ。
820: 2016/10/17(月)19:24 ID:HyFRmQUJ(1)調 AAS
>>815
その場合 . じゃなくて f.
821: 2016/11/06(日)00:15 ID:RpZeQ9IA(1)調 AAS
Factorのチュートリアル分かりにくい。Racketを見習え��
822: 2016/12/30(金)20:20 ID:XiEG6f+8(1)調 AAS
もう2016年も終わりだな
823
(1): 【末吉】 【2等 10,000,000円】 2017/01/01(日)11:49 ID:wqx7ZaQB(1)調 AAS
.
824: 2017/01/03(火)10:53 ID:KXR/d/nR(1)調 AAS
ことしもよろしく!
825: 2017/01/03(火)12:26 ID:qzU7aiCI(1)調 AAS
>>823
2等おめ
826: 2017/02/04(土)16:41 ID:6xXEHIbo(1)調 AAS
うんこ
話題ねーなー
827: 2017/02/04(土)16:44 ID:e9aNESBj(1)調 AAS
あへ
828: 2017/02/05(日)14:14 ID:nBEZPMY5(1)調 AAS
なんか話せ
829: 2017/02/28(火)21:19 ID:5qIw+x2+(1)調 AAS
factor 1.0 マダー
830: 2017/03/03(金)18:00 ID:3XbKihVE(1)調 AAS
うんやってみようとおもう。
ところで仕様書(規格書)はどこにあるんですかね?
831
(1): 2017/03/03(金)18:29 ID:IUFykjWp(1)調 AAS
>1- よめ
832: 2017/03/04(土)00:48 ID:4xESmR76(1/2)調 AAS
>>831 わかんない
https://www.openfirmware.info/data/docs/dpans94.pdf
これかな?
833: 2017/03/04(土)01:07 ID:4xESmR76(2/2)調 AAS
http://www.forth.org/literature.html
こっち
834: 2017/03/04(土)12:32 ID:GRvQ2lmz(1)調 AAS
>>781
まだ残ってたのか
835: 2017/04/03(月)11:16 ID:UVNX4qSu(1/2)調 AAS
みなさーん生きてますかー?
836: 2017/04/03(月)19:02 ID:Z+6yuhBz(1)調 AAS
いきとるぞー
純粋なforthは全然さわらずfactorばっかりだけどな

あと組み込み機でTITもどきかなー
837
(1): 2017/04/03(月)19:11 ID:UVNX4qSu(2/2)調 AAS
次スレでは皆が胸を張れるように「スタック指向言語」「連鎖型言語」みたいなくくりにしよう!
838: 2017/04/04(火)02:27 ID:WA/rnyB6(1)調 AAS
>>837
forthだとスタックに積まれたオブジェクトに関数ってメッセージを送るって言うことだとおもうのだけど。
そういう単純な理解じゃ駄目なの?

言語レベルで隠蔽されていることを生で扱うって事で良いんじゃ無いの?

Lispだと関数の呼び出しが括弧で括られいるから呼び出しの引数の扱いが閉じられているけど、forthの場合は関数が必要な分を消費するというか
839: 2017/04/04(火)09:11 ID:89iVo3+8(1)調 AAS
メッセージ?違う言語と勘違いしてそう
840
(1): 2017/04/04(火)11:14 ID:wm/ZDuC6(1)調 AAS
コールスタックとforthのスタックは別物だよね。
841: 2017/04/05(水)02:36 ID:9ywW0Xq5(1)調 AAS
>>840
2つあるんだよ、関数呼び出しの戻りアドレス用のスタックと別にもう一つあるんよ
842: 2017/04/05(水)14:29 ID:+eJqUohN(1)調 AAS
アキュムレータ
843
(1): 2017/04/11(火)00:06 ID:N954SJpH(1)調 AAS
forthがスタック指向であるようにアキュムレータ指向のプログラム言語というものは作れるのかな
844
(1): 2017/04/11(火)01:23 ID:Y8UBVT27(1)調 AAS
>>843
マジレスするとmacroありのassemblerじゃねぇの?
macro80やslrasmでもできたぞ
845
(1): 2017/04/15(土)23:36 ID:bK+0/AQY(1)調 AAS
>>844
マクロだけでは構文は抽象化出来てもシステムとして抽象化しきれないと思うけど
846: 2017/04/16(日)02:22 ID:GjRoh4Fn(1)調 AAS
単に計算は常にAXを使うってだけなら特に面白みもなさそう
スタック無しでレジスタ無限ということなら……単に再帰呼び出し禁止なだけの普通の言語だよなあ
847: 2017/04/17(月)06:41 ID:Oz2f+5Ln(1)調 AAS
>>845
ニクラウス・ヴィルトの言うところの条件分岐とか繰り返し構文はチョロく書けるよ>>macro80とslrasmとかのマクロアセンブラ
つかmacro80とか8bit時代のあのメモリでよくやるわと思う。

forthスレっぽいネタだと昔(1981年の8月号だと思う)のCQ出版の記事でTITって言語があってこれがマクロアセンブラでforthを実装するって記事だったような?
848: 2017/07/19(水)19:04 ID:IRmsE5AJ(1)調 AAS
1 . 2 . 3 . 4 .
849: 2017/08/13(日)12:07 ID:BkdmOdbH(1)調 AAS
実に簡素で危険で強力だ。
貧者の言語だな。
俺にふさわしい。
850: 2017/09/03(日)23:56 ID:sfrNKeHf(1)調 AAS
もうオレしかいないのか。。。。。
851: 2017/09/04(月)18:01 ID:XVvO50gB(1)調 AAS
無いのはネタだよ
852: 2017/09/05(火)22:07 ID:jOSE+tCs(1)調 AAS
俺も見てるよ
853: 2017/09/06(水)12:34 ID:nQAnFQdT(1)調 AAS
時々見に来てる
854: 2017/09/06(水)15:10 ID:p7vL1/ES(1)調 AAS
点呼スレ
855: 2017/09/17(日)21:34 ID:ozIOAGyP(1)調 AAS
age
856: 2017/09/18(月)20:29 ID:lhUDwV9a(1)調 AAS
これまで全く気にしたことないけど、forthって動的にリンクするライブラリの類は存在するの?
857: 2017/09/19(火)17:19 ID:xxOzXrDl(1)調 AAS
OPT
858: 2017/10/10(火)10:11 ID:jFJIQFdq(1)調 AAS
いま処理系書いているわけどすよ
古典的なディクショナリに含まれる変数領域(エントリのitcならpfバイトコードならcf)って実行時書き込みが必要だからrom化できないよね?
ディクショナリをromに組み込む時どのようにしたらいいの?
859: 2017/10/13(金)08:39 ID:vQb8BZek(1)調 AAS
?単にリンク時に再配置すればよいのではないだろうか
860: 2017/11/18(土)00:00 ID:u5vhQC2r(1)調 AAS
age
861: 2018/02/02(金)03:15 ID:ZCx6BMYx(1)調 AAS
保★守
862: 2018/02/03(土)09:42 ID:qWVkS+Es(1)調 AAS
やってみ
863: 2018/05/23(水)20:31 ID:Au5e7VGg(1)調 AAS
僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』

96NO5
864: 2018/06/04(月)02:21 ID:qEnuCrwb(1)調 AAS
本当に話題がないんですね
865: 2018/07/04(水)22:35 ID:gFgZc5FG(1)調 AAS
SQU
866: 2018/07/06(金)12:19 ID:uTPDH9XV(1)調 AAS
96NO5
867
(1): 2018/12/08(土)12:02 ID:FYXcP+Xf(1)調 AAS
初心者ですがthinking forth読んでます。
さっそく詰まりました。
: + BL WORD NUMBER DROP ;
で+を再定義すると中置記法で3 + 4できるとあり、確かに7が得られるのですが、
どうしてそうなるのか分かりません。
(別に中置記法で書きたいわけではありません)
BLが(ボーイズラブではなく)空白の文字コード、
WORDがアドレスを得る、
DROPは . と同じですよね?
NUMBERがポイントなのでしょうが…
どなたか解説してくれませんか?
868: 2018/12/08(土)14:44 ID:mtUDrJjH(1)調 AAS
https://books.google.co.jp/books?id=1AlWbXItiCYC&pg=PA111&lpg=PA111&ots=aekOu1m-uM&sig=V0gs7ufaMhDJsPDn6rT08XhStFY&ved=2ahUKEwjKgrCmt4_fAhUMfrwKHQQnBXEQ6AEwBXoECAkQAQ
http://www.nicholson.com/rhn/files/Tiny_BASIC_in_Forth.txt
https://www.forth.com/starting-forth/10-input-output-operators/
https://www.forth.com/starting-forth/11-forth-compiler-defining-words/
http://galileo.phys.virginia.edu/classes/551.jvn.fall01/primer.htm
869: 2018/12/19(水)17:23 ID:+/rbvZbE(1)調 AAS
>>867

昔々にFORTHをほんのちょっとかじっただけの通りすがりだけど、最後に + が
抜けとるよね。

: + BL WORD NUMBER DROP + ;

その抜けとる(再定義前の後置記法で加算する)+  に 3 4を渡して 
3 4 + 
をさせるために4をスタックに積むことをさせとるんだと思う。
空白で区切られた”4”を取ってきて、数字に換えてスタックに乗せといて(元々
の) + に渡たしてる、かな。

. は 印刷で、DROPはスタックから一つ捨てるのような。

ていうか、そこ読んでる時点ではわからんでもいいのでは。
870: 2018/12/26(水)20:16 ID:v8erlN15(1/2)調 AAS
>>267
この事情おしえて!
できるんなら全部後置がいいと思ってた。
どんななるほどな理由があるんだろう?
871: 2018/12/26(水)21:18 ID:Sasn9R68(1/2)調 AAS
; とか UNTIL のように可変長引数を扱うには先頭に目印が必要になるね。
>>265がちぐはぐと言っているのがどれのことなのかはわからんが。
872
(1): 2018/12/26(水)21:40 ID:v8erlN15(2/2)調 AAS
じゃあ1足して2掛けるワードhogeの定義は
: hoge 1 + 2 * ;(hogeとは:1を足して2で掛けることである)
だけど別に
: 1 + 2 * hoge ;(1を足して2で掛けることをhogeとする)
とか
: 1 + 2 * ; ." hoge" def(1を足して2で掛けることを"hoge"という名前で定義する)
みたいな文法もあり得たのかな?
本体、定義するワードの識別子名
という並びではなく、
定義するワードの識別子名、本体
の並びなのは、何かの事情があっての必然なのか、たまたまなのか、それが知りたいです。
873: 2018/12/26(水)22:58 ID:Sasn9R68(2/2)調 AAS
機能的にはどっちでも可能だろうけど、人が書くコードとしては識別子を前に置く方が
わかりやすいからじゃないかと思う。
あと、ディクショナリに登録する際に : からスタックトップ方向にスキャンするなら
識別子が後ろに置かれると一つ先読みが必要になってちょっと面倒くさい。
874: 2018/12/27(木)01:01 ID:KLGborwt(1)調 AAS
forthって人の都合よりコンピュータの都合優先みたいなイメージだったので人の読みやすさのためだったとしたら意外でした。
後半は納得しました。そうかそれでか…
ありがとうございました。
875: 2018/12/27(木)09:49 ID:0qVX2+Xi(1)調 AAS
>>872
昔の貧弱なメモリとCPUでコンパイラ作るんだから
文法優先じゃなくてコンパイラの事情優先でそうなんだろ
876: 2019/06/19(水)04:58 ID:tVNS+22r(1)調 AAS
【出資】松本卓朗 人工知能詐欺【注意】
2chスレ:rikei
877: 2019/07/05(金)18:14 ID:E00Aj00V(1)調 AAS
8年と半年掛かって>>624の言ってる事がようやくわかった。
ここの人って、何周か回っちゃってFORTHに行き着いてるんだね。
いや、SECDマシンってFORTHそっくりじゃん?!と書きに来ました。
では、また・・・。
878
(1): 2019/08/28(水)00:27 ID:1gWoA2G/(1)調 AAS
https://ja.m.wikipedia.org/wiki/%E3%82%B9%E3%83%AC%E3%83%83%E3%83%87%E3%83%83%E3%83%89%E3%82%B3%E3%83%BC%E3%83%89#%E9%96%8B%E7%99%BA
でも触れられている、ムーアが間接スレッデッドコードの発明について述べたというバイト誌のForth特集、なんと今ではWebで読めちゃうw
当時の誌面のスキャン。なんと当時の誌面広告もノーカットw
https://archive.org/details/byte-magazine-1980-08/page/n77
さらに親切なことにフルテキストまで公開されてる。
https://archive.org/stream/byte-magazine-1980-08/1980_08_BYTE_05-08_The_Forth_Language_djvu.txt

興味のある方、ぜひ一読を。
879: 2019/08/28(水)01:40 ID:azl3m+0S(1)調 AAS
紙屑ωωω
880: 2019/08/28(水)07:19 ID:iwi2TSA5(1)調 AAS
>>878
ムーア御大の直々の解説か
881: 2020/04/15(水)15:05 ID:SXQ2sjzm(1)調 AAS
Oforth使ってる人いますか?
なんとなくSmalltalkぽいですね
882
(1): 2020/11/28(土)11:39 ID:Gr5a9V0P(1)調 AAS
apt のgforth.73使ってたんだけどアップデしたらメチャクチャ快適になった…
色付くわhelpコマンド付くわでしゅごい
883: 2020/11/29(日)08:16 ID:sDMgzk6G(1)調 AAS
>>882
この言語で何作ってる?
884: 2020/11/29(日)20:10 ID:JzQZ+ZwM(1)調 AAS
インスピレーションを得てるよ()
885
(1): 2021/01/04(月)10:36 ID:62MOX0QC(1)調 AAS
>>816
このurl、forthで検索するとあちこちに見掛けるんだけど閉鎖しちゃったのかな
waybackにもgoogle cacheにも残ってない…
886
(1): 2021/01/04(月)15:05 ID:VbZ6KZlq(1)調 AAS
>>885
>waybackにもgoogle cacheにも残ってない…
http://web.archive.org/web/20160425023618/http://www.h7.dion.ne.jp/~samwyn/forth/gforth/Floating-Point-Tutorial.html
887: 2021/01/04(月)18:39 ID:VbR1j+mv(1)調 AAS
>>886
使い方が悪かったのかも!ありがとう!
888: 2021/03/11(木)07:45 ID:ifNxw6Pa(1/2)調 AAS
技術的というより哲学っぽいので敬遠してたthinking forth今更読んだけど代名詞の言語というのがしっくり来た
どんな言語でもちゃんと書かれれば最上層のコード派読みやすいけどForthがとりわけ読みやすいのはこれだよな
最下層はほとんどアセンブラなのにこの極端性よ
889: 2021/03/11(木)07:58 ID:ifNxw6Pa(2/2)調 AAS
でもスタックイジイジするのパズルみたいでめちゃくちゃ楽しいんだよなあ、くやしい…
890: 2021/08/23(月)12:03 ID:YpDpq+5R(1)調 AAS
もはや(8ビット)PCのためではなく(マニアックな)人間のための言語。
891: 2022/01/01(土)09:37 ID:6v4FYv8q(1)調 AAS
あけおめ!
892: 2022/01/10(月)20:06 ID:Ge4oCWB3(1)調 AAS
久々に書き込みあったと思えば
あけおめ!

今どきforthは趣味だろうけど良い趣味だよ
あとAndroid版のgforthは関数電卓代わりに毎日使ってる
893: 2022/05/16(月)14:09 ID:/9w+5JsX(1)調 AAS
保守

する価値がまだあるだろうか
894: 2022/05/17(火)10:45 ID:u8alpQJv(1/2)調 AAS
今勉強中だけどおもしろい

しかしパーシングワードはどうにかならんかったのか
定義の底に埋もれたnameが解釈時に吸い込んだりするのが文脈飛んで分かりにくい…
psみたいに/name {code} exch def方式のほうが一貫性あったのではないか
895
(1): 2022/05/17(火)10:55 ID:u8alpQJv(2/2)調 AAS
FORTHへの招待って古い本買ったんだけど、PICK/ROLLのindexが1始まりだったり、今の処理系と結構違うよね
長々とハードの話から始まり機能紹介までで終わってて、具体的なコーディングテクニックまでたどり着いてない…

モダンでオススメな本ってあるかな
896: 2022/05/19(木)08:44 ID:13z7p19v(1)調 AAS
モダンなFORTHなど存在しない!
897: 2022/05/20(金)15:21 ID:B9Pct0M/(1)調 AAS
初学者だけど
まあレトロなところに惹かれたのは否定できないな
有名な"FORTH思考"とか、一般プログラミング作法の啓蒙書としては素晴らしい
ブロックの章立ての章とかよく考えさせられる、まあ実ファィルに置き換えて写経してるけど
898: 2024/01/01(月)09:03 ID:MIyexYoQ(1)調 AAS
あけおめ!
899: 2024/01/21(日)09:24 ID:rroAgTgL(1)調 AAS
古の8bit機みたいな小さいマシンでnextルーチン書くところから始めてみたい
900: 2024/05/04(土)06:00 ID:+DAXDwQe(1)調 AAS
標準FORTHが国会図書館のサイトで読めるようになってる(要登録
https://dl.ndl.go.jp/pid/12631453

他にも古い本が色々見られるようになったっぽい。
901: 2024/05/05(日)14:45 ID:Fv0JPqsX(1)調 AAS
読もう。持ってたのは昔無くした
902: 01/01(水)10:04 ID:exme2yo6(1)調 AAS
あけおめ
903
(1): 06/14(土)06:37 ID:3Q/jS2n6(1/2)調 AAS
forthソースファイルをunices上で実行可能ファイルにする一般的な方法ってある?
PC上を想定していて超リッチなgforthなら #! 機構を想定して#!を\のシノニムとして定義してくれてて助かるんだけれども、これのない場合にも対応したい

思い付いたのは
: && true ; \ exec forth "$0" -- "$@"

forth側:
ワード&&(普通未定義)をtrue=-1としてコロン定義、後はコメント
sh側: :コマンドが成功したらtrueコマンドを実行、次にインタプリタを起動

なんだけれどsh側では
" exec" "forth" ...
とトークン化されてcommand not found
\execとスペース開けずに書けたら良いんだけどするとforthはコメントとして認識しない

何かいい知恵あったら教えてください
904: 06/14(土)06:52 ID:3Q/jS2n6(2/2)調 AAS
>>895
forthのrollは n roll でn個先までを1回まわすけど
postscriptのrollは n m roll でn個先までm回まわせてより強力なのよね
mは負でも可で逆回転もできる

あんまりコードに数値を入れるのはbad practiceとはいえforth書いてると時々欲しくなるやつ…
905: 06/21(土)00:54 ID:flEjrxpy(1)調 AAS
>>903だけど自己解決
: && true ; ( exec forth "$0" -- "$@" )
で行けた
潔癖症ではないから定義されたワード&&は気にしない、たぶん処理系定義の&&は見たこと無いこら潰す事もないはず

一応win32forthとか複数の処理系で
forget &&
て消せたと思うんだけれど、今試してみたらgforthに無いからforgetは非標準ワードなのな
906: 06/21(土)11:16 ID:fGhLJfIJ(1)調 AAS
こら
907: 06/26(木)14:21 ID:nmyewptE(1)調 AAS
神経質すぎじゃねる
まあforgetはmarkerで実装できそうな気がする
1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 1.149s*