forthソースファイルをunices上で実行可能ファイルにする一般的な方法ってある?
PC上を想定していて超リッチなgforthなら #! 機構を想定して#!を\のシノニムとして定義してくれてて助かるんだけれども、これのない場合にも対応したい
思い付いたのは
: && true ; \ exec forth "$0" -- "$@"
forth側:
ワード&&(普通未定義)をtrue=-1としてコロン定義、後はコメント
sh側: :コマンドが成功したらtrueコマンドを実行、次にインタプリタを起動
なんだけれどsh側では
" exec" "forth" ...
とトークン化されてcommand not found
\execとスペース開けずに書けたら良いんだけどするとforthはコメントとして認識しない
何かいい知恵あったら教えてください
2 part forth
レス数が900を超えています。1000を超えると表示できなくなるよ。
903デフォルトの名無しさん
2025/06/14(土) 06:37:53.81ID:3Q/jS2n6904デフォルトの名無しさん
2025/06/14(土) 06:52:21.04ID:3Q/jS2n6 >>895
forthのrollは n roll でn個先までを1回まわすけど
postscriptのrollは n m roll でn個先までm回まわせてより強力なのよね
mは負でも可で逆回転もできる
あんまりコードに数値を入れるのはbad practiceとはいえforth書いてると時々欲しくなるやつ…
forthのrollは n roll でn個先までを1回まわすけど
postscriptのrollは n m roll でn個先までm回まわせてより強力なのよね
mは負でも可で逆回転もできる
あんまりコードに数値を入れるのはbad practiceとはいえforth書いてると時々欲しくなるやつ…
905デフォルトの名無しさん
2025/06/21(土) 00:54:36.13ID:flEjrxpy >>903だけど自己解決
: && true ; ( exec forth "$0" -- "$@" )
で行けた
潔癖症ではないから定義されたワード&&は気にしない、たぶん処理系定義の&&は見たこと無いこら潰す事もないはず
一応win32forthとか複数の処理系で
forget &&
て消せたと思うんだけれど、今試してみたらgforthに無いからforgetは非標準ワードなのな
: && true ; ( exec forth "$0" -- "$@" )
で行けた
潔癖症ではないから定義されたワード&&は気にしない、たぶん処理系定義の&&は見たこと無いこら潰す事もないはず
一応win32forthとか複数の処理系で
forget &&
て消せたと思うんだけれど、今試してみたらgforthに無いからforgetは非標準ワードなのな
906デフォルトの名無しさん
2025/06/21(土) 11:16:23.88ID:fGhLJfIJ こら
907デフォルトの名無しさん
2025/06/26(木) 14:21:09.64ID:nmyewptE 神経質すぎじゃねる
まあforgetはmarkerで実装できそうな気がする
まあforgetはmarkerで実装できそうな気がする
908デフォルトの名無しさん
2025/10/12(日) 02:30:37.41ID:DKsy7+ZR PCで触ってないからunix(shebang)+forth処理系のハックは詳しくないんだけれども、まあ面白そうだね
ワードを消すforgetは任意のワード対象、で良かったかな(たしかそう)
しかしmarkerは事前に設定したマーカーまでオフセットずらして巻き戻し、よってそれまでのワードがリセットされる仕組みだったはずだから、任意ワードを、特に名指しで消すには不向きでは
いやまあ消せるんだからマーカーの記録されてるメモリを退避したりリカバリしたり丁寧に管理してやればできるはずだが…
ワードを消すforgetは任意のワード対象、で良かったかな(たしかそう)
しかしmarkerは事前に設定したマーカーまでオフセットずらして巻き戻し、よってそれまでのワードがリセットされる仕組みだったはずだから、任意ワードを、特に名指しで消すには不向きでは
いやまあ消せるんだからマーカーの記録されてるメモリを退避したりリカバリしたり丁寧に管理してやればできるはずだが…
909デフォルトの名無しさん
2025/10/17(金) 05:21:31.52ID:D1Ebmx1L 別に余計なワードがあろうと問題なくね
たまたま同じ名前のワードを定義したらそれが有効な訳だし
ブートストラップ用途なら別に潰されても困らん、ブートストラップにしか使わんのだからな
たまたま同じ名前のワードを定義したらそれが有効な訳だし
ブートストラップ用途なら別に潰されても困らん、ブートストラップにしか使わんのだからな
レスを投稿する
レス数が900を超えています。1000を超えると表示できなくなるよ。
ニュース
- 中国・ロシア両軍の爆撃機が東京方面へ向かう「異例のルート」を共同飛行…核も搭載可能、連携して威嚇か ★2 [ぐれ★]
- 中国・ロシア両軍の爆撃機が東京方面へ向かう「異例のルート」を共同飛行…核も搭載可能、連携して威嚇か ★3 [ぐれ★]
- 京都のホテル大幅値下げ 訪日中国人客、年1000万人目前で急ブレーキ [蚤の市★]
- 「中国人の訪日熱は冷めた」 人気旅行先から日本外れる 14日で自粛呼びかけ1カ月 ★3 [蚤の市★]
- 現場からは悲鳴、母親からは「高い」「性犯罪が怖い」の声も…高市総理がどうしても実現したい政策「ベビーシッターの利用促進」 [ぐれ★]
- 立民が不信任案提出を断念 国公など野党まとめる力なく 高市政権評価は「時期尚早」 [煮卵★]
- 【悲報】ユニクロのダウンを洗った結果wwwwwwwwwwwwwwwwwwww [802034645]
- 【安倍の禍】円安、日本を苦しめる!国民生活だけでなく、経済界からも行き過ぎだとの声。利上げ観測も円安傾向 [219241683]
- 土曜日の午前中からお酒飲んじゃうおじさんいるでしょ
- 議員定数削減法案、廃案へwmwmwmmwmwmwmw [834922174]
- 【高市悲報】NHKニュース「発狂している中国に対して、日本は至って冷静」😳 [762037879]
- 【悲報】男「セックスしなくなったら彼女のことだんだん許せなくなったわ」→炎上wwwwwwwwwwwwwwwwwwww [802034645]
