2 part forth (907レス)
1-

リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
869: デフォルトの名無しさん [sage] 2018/12/19(水) 17:23:11.16 ID:+/rbvZbE(1) AAS
>>867

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

: + BL WORD NUMBER DROP + ;

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

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

ていうか、そこ読んでる時点ではわからんでもいいのでは。
870: デフォルトの名無しさん [] 2018/12/26(水) 20:16:53.64 ID:v8erlN15(1/2) AAS
>>267
この事情おしえて!
できるんなら全部後置がいいと思ってた。
どんななるほどな理由があるんだろう?
871: デフォルトの名無しさん [sage] 2018/12/26(水) 21:18:44.18 ID:Sasn9R68(1/2) AAS
; とか UNTIL のように可変長引数を扱うには先頭に目印が必要になるね。
>>265がちぐはぐと言っているのがどれのことなのかはわからんが。
872
(1): デフォルトの名無しさん [] 2018/12/26(水) 21:40:46.64 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: デフォルトの名無しさん [sage] 2018/12/26(水) 22:58:21.72 ID:Sasn9R68(2/2) AAS
機能的にはどっちでも可能だろうけど、人が書くコードとしては識別子を前に置く方が
わかりやすいからじゃないかと思う。
あと、ディクショナリに登録する際に : からスタックトップ方向にスキャンするなら
識別子が後ろに置かれると一つ先読みが必要になってちょっと面倒くさい。
874: デフォルトの名無しさん [sage] 2018/12/27(木) 01:01:36.58 ID:KLGborwt(1) AAS
forthって人の都合よりコンピュータの都合優先みたいなイメージだったので人の読みやすさのためだったとしたら意外でした。
後半は納得しました。そうかそれでか…
ありがとうございました。
875: デフォルトの名無しさん [] 2018/12/27(木) 09:49:16.14 ID:0qVX2+Xi(1) AAS
>>872
昔の貧弱なメモリとCPUでコンパイラ作るんだから
文法優先じゃなくてコンパイラの事情優先でそうなんだろ
876: デフォルトの名無しさん [] 2019/06/19(水) 04:58:42.00 ID:tVNS+22r(1) AAS
【出資】松本卓朗 人工知能詐欺【注意】
2chスレ:rikei
877: デフォルトの名無しさん [] 2019/07/05(金) 18:14:54.04 ID:E00Aj00V(1) AAS
8年と半年掛かって>>624の言ってる事がようやくわかった。
ここの人って、何周か回っちゃってFORTHに行き着いてるんだね。
いや、SECDマシンってFORTHそっくりじゃん?!と書きに来ました。
では、また・・・。
878
(1): デフォルトの名無しさん [] 2019/08/28(水) 00:27:04.68 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:32.21 ID:azl3m+0S(1) AAS
紙屑ωωω
880: デフォルトの名無しさん [sage] 2019/08/28(水) 07:19:51.77 ID:iwi2TSA5(1) AAS
>>878
ムーア御大の直々の解説か
881: デフォルトの名無しさん [sage] 2020/04/15(水) 15:05:18.34 ID:SXQ2sjzm(1) AAS
Oforth使ってる人いますか?
なんとなくSmalltalkぽいですね
882
(1): デフォルトの名無しさん [sage] 2020/11/28(土) 11:39:10.89 ID:Gr5a9V0P(1) AAS
apt のgforth.73使ってたんだけどアップデしたらメチャクチャ快適になった…
色付くわhelpコマンド付くわでしゅごい
883: デフォルトの名無しさん [sage] 2020/11/29(日) 08:16:26.52 ID:sDMgzk6G(1) AAS
>>882
この言語で何作ってる?
884: デフォルトの名無しさん [sage] 2020/11/29(日) 20:10:16.85 ID:JzQZ+ZwM(1) AAS
インスピレーションを得てるよ()
885
(1): デフォルトの名無しさん [sage] 2021/01/04(月) 10:36:47.94 ID:62MOX0QC(1) AAS
>>816
このurl、forthで検索するとあちこちに見掛けるんだけど閉鎖しちゃったのかな
waybackにもgoogle cacheにも残ってない…
886
(1): デフォルトの名無しさん [] 2021/01/04(月) 15:05:51.77 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: デフォルトの名無しさん [sage] 2021/01/04(月) 18:39:50.21 ID:VbR1j+mv(1) AAS
>>886
使い方が悪かったのかも!ありがとう!
888: デフォルトの名無しさん [sage] 2021/03/11(木) 07:45:30.66 ID:ifNxw6Pa(1/2) AAS
技術的というより哲学っぽいので敬遠してたthinking forth今更読んだけど代名詞の言語というのがしっくり来た
どんな言語でもちゃんと書かれれば最上層のコード派読みやすいけどForthがとりわけ読みやすいのはこれだよな
最下層はほとんどアセンブラなのにこの極端性よ
889: デフォルトの名無しさん [sage] 2021/03/11(木) 07:58:59.35 ID:ifNxw6Pa(2/2) AAS
でもスタックイジイジするのパズルみたいでめちゃくちゃ楽しいんだよなあ、くやしい…
890: デフォルトの名無しさん [sage] 2021/08/23(月) 12:03:08.07 ID:YpDpq+5R(1) AAS
もはや(8ビット)PCのためではなく(マニアックな)人間のための言語。
891: デフォルトの名無しさん [sage] 2022/01/01(土) 09:37:17.88 ID:6v4FYv8q(1) AAS
あけおめ!
892: デフォルトの名無しさん [sage] 2022/01/10(月) 20:06:51.30 ID:Ge4oCWB3(1) AAS
久々に書き込みあったと思えば
あけおめ!

今どきforthは趣味だろうけど良い趣味だよ
あとAndroid版のgforthは関数電卓代わりに毎日使ってる
893: デフォルトの名無しさん [sage] 2022/05/16(月) 14:09:01.58 ID:/9w+5JsX(1) AAS
保守

する価値がまだあるだろうか
894: デフォルトの名無しさん [sage] 2022/05/17(火) 10:45:03.75 ID:u8alpQJv(1/2) AAS
今勉強中だけどおもしろい

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

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

他にも古い本が色々見られるようになったっぽい。
901: デフォルトの名無しさん [sage] 2024/05/05(日) 14:45:30.58 ID:Fv0JPqsX(1) AAS
読もう。持ってたのは昔無くした
902: デフォルトの名無しさん [sage] 2025/01/01(水) 10:04:42.73 ID:exme2yo6(1) AAS
あけおめ
903
(1): デフォルトの名無しさん [] 2025/06/14(土) 06:37:53.81 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: デフォルトの名無しさん [] 2025/06/14(土) 06:52:21.04 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: デフォルトの名無しさん [] 2025/06/21(土) 00:54:36.13 ID:flEjrxpy(1) AAS
>>903だけど自己解決
: && true ; ( exec forth "$0" -- "$@" )
で行けた
潔癖症ではないから定義されたワード&&は気にしない、たぶん処理系定義の&&は見たこと無いこら潰す事もないはず

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

ぬこの手 ぬこTOP 0.024s