14/01/05 21:15:32.75 .net
保守!!!
Forth は実用に耐えるのですか?特に可読性的に
678:デフォルトの名無しさん
14/01/05 22:21:30.32 .net
>>677
Forth の達人 (= プロの Forth 屋) なら、数十万行でも苦にならないそうな。
ライフゲーム
URLリンク(wiki.forthfreak.net)
BASIC インタプリタ
URLリンク(home.iae.nl)
FALSE インタプリタとコンパイラ
URLリンク(github.com)
その他
URLリンク(wiki.forthfreak.net)
URLリンク(wiki.forthfreak.net)
みんな目的に特化したプログラミングをするので、汎用ライブラリやフレームワークは無いに等しいけれどね
(個々の実装に特化したものならそれなりにあるけど)。
679:デフォルトの名無しさん
14/01/05 23:08:26.86 .net
thx
まさかこんなに早く返事がくるとは思わなかった!
680:デフォルトの名無しさん
14/01/06 05:54:37.02 .net
常に人はいるんだわ
単に新しい話題がなんにもないだけで
681:デフォルトの名無しさん
14/01/06 15:05:08.84 .net
>>678
Forthの力ってすげー。
>>680
なる
おもしろそうだな。
RPNで文法が統一されているところが超COOLだ!
俺が作ってみようじゃないか?!
ちなみに慣例や伝統はしらぬから、
皆が想像しているものと大きく違うと思うがな!!
682:デフォルトの名無しさん
14/01/06 17:56:02.28 .net
>>681 期待してます!
683:デフォルトの名無しさん
14/01/06 20:20:59.69 .net
文字列はどういう風に扱えばよいのですか?
684:デフォルトの名無しさん
14/01/06 21:14:53.59 .net
>>683
文字数と文字列本体からなる構造体のアドレス(ポインタ)、とか。
685:デフォルトの名無しさん
14/01/06 22:41:12.49 .net
日本語情報なら
URLリンク(www-lab.ee.uec.ac.jp)
URLリンク(www.h7.dion.ne.jp)
後者の Gforth マニュアル
URLリンク(www.h7.dion.ne.jp)
は「OS コマンドライン引数用ワード」まで訳してある (残りは未訳)。
また、ANS Forth ではない独自仕様だけども、
URLリンク(www.h7.dion.ne.jp)
URLリンク(www.h7.dion.ne.jp)
URLリンク(www.h7.dion.ne.jp)
も Forth 自体の実装を目論むなら参考になるかも (ちなみに現在の RetroForth はこれよりもう少し進化してる)。
686:デフォルトの名無しさん
14/01/06 23:19:19.70 .net
>>683
684の追記ですが、素のFORTHだとスタックには数値しか置けないので
文字列のアドレスがスタックに積まれます。
もちろんFactorの様に、なんでもスタックに積めるのもアリです。
私もなんでも積めるように実装して、まぁうまく行ったのですが
>>672の方と同じ問題もあったので、スタックには数値しか置けない
実装も試してみたいと思っています。
687:デフォルトの名無しさん
14/01/07 09:04:59.98 .net
ややこしい物は全部辞書に突っ込むとかの手も。
688:デフォルトの名無しさん
14/01/07 11:29:30.09 .net
>>687
文字列等をワードの定義に置き換えてしまう、と言うことでしょうか?
この場合、最終的にスタックに積まれる物は何になるのでしょうか?
689:デフォルトの名無しさん
14/01/07 12:34:21.76 .net
>>688の自己レスですが、辞書にと言うことは素FORTHの話だと思うので
文字列を辞書に登録後、そのアドレスがスタックへ積まれることになりますね。
690:681
14/01/13 14:43:11.44 .net
681です。
インタプリタでいいよね?
691:デフォルトの名無しさん
14/01/15 17:15:27.03 .net
>>690
バイトコードとかスレッデッドコードインタプリタであればFORTHの普通過ぎると思う(誰もが一度はやる)
JIT(AnyCPU向け)実装とか,Factor見たいな構造をスタックに詰めるとかの部分をがんばらないとn番煎じになっちゃうから何か独自のがんばりが必要だと思うよ。
というかFactorが凄いのでアレ超えて欲しいな(アイデアだけでも)
OSSでがんばるならこっそりコントリビュートする人はこのスレにも多そうだからがんばれ!
692:デフォルトの名無しさん
14/01/15 23:01:48.08 .net
最初はベタな書き方でいいと思う
693:デフォルトの名無しさん
14/01/16 04:52:38.68 .net
Forth で Forth を書くんだ
694:デフォルトの名無しさん
14/01/17 10:55:03.71 .net
>>690
インタプリタだと、Forthの制御構造とかループが
意外とうまく行かなくて楽しいよ。
>>693
このスレの上の方にもありますが、Let over Lambdaでは
LispでForthを書いて、そのForthでLispを作ってますね。
695:デフォルトの名無しさん
14/01/26 21:50:03.79 .net
forthインタプリタありすぎてどれを使えばいいかよく分からないけど
とりあえずgforth使っておけばいいのかな
696:デフォルトの名無しさん
14/01/26 22:12:55.38 .net
とりあえずなら何使ってみてもいいと思うよ
697:デフォルトの名無しさん
14/01/27 11:46:12.62 .net
自分でインタプリタ書いてみるのも良い
698:デフォルトの名無しさん
14/02/20 20:29:49.07 .net
URLリンク(forthfreak.net)
699:デフォルトの名無しさん
14/03/12 13:38:35.60 ZbttMlJE.net
URLリンク(www.worldofspectrum.org)
Forth-83 の ZX Spectrum (欧州版 MSX1 のような Z80A 8 ビットパソコン) 版。
Forth-83_Extras.zip に Forth アセンブラ記述の実装ソースあり。FIG-Forth ベースらしく、最小限
のプリミティブワード以外は FIG-Forth と同じく Forth 自体で記述されてる。
700:デフォルトの名無しさん
14/03/12 17:03:35.35 f26liuj5.net
あの頃のPCに標準装備されてるのがゲイツBASICでなくてForthだったらPC世界は今とは随分違ったものになってただろうな。
701:デフォルトの名無しさん
14/03/12 17:20:04.88 w2TVy3P1.net
>>700
カシオの電卓もきっとRPNに!
BASICってコンピュータが何をしてくれるのかを学ぶのには適してるとおもうけどなあ
FORTHもそうだけどREPL環境のあるコンピュータ言語だとBASIC,FORTH,LISPの御三家があるけど、どれが一番よかったんだろう?
702:デフォルトの名無しさん
14/03/12 17:26:49.46 EfiLuccu.net
Lispがベストだが、いかんせん大食らい過ぎる。
Forthも悪くない。
Basicの奴はREPLのようなREPLでないような微妙なコマンドラインだしなぁ。
703:デフォルトの名無しさん
14/03/12 17:41:55.19 w2TVy3P1.net
>>702
実マシンのメモリモデル的にはBASICが一番合う気がするんだよね。
で関数定義を基本とするならLISPが一番。(引数と関数の関係が一目瞭然なので)
で、FORTHだとFACTORみたいにオブジェクトとメッセージみたいな含みができれば最高なのにという感じ
という個人的な感想をもっちゃう。
>Basicの奴はREPLのようなREPLでないような微妙なコマンドラインだしなぁ。
forgetで+とか以降を消して涙目とかは流石にBASICじゃできないと思うのでそこら辺のシステム空間とユーザ空間みたいな区別はあっても良いかもしれない
704:デフォルトの名無しさん
14/06/03 01:33:51.03 pa2cdK6+.net
>>704
そんなこたないんだが、arm用に特化したforth処理系ってのが存在しないのも事実なのでなんと言えばいいんだろうか。
ちなみに特化しなくても何とかなっちゃうのがforthの良い所だったり、何も無いところから作り込んでもそんなに手間じゃなかったりするのも魅力だったりする。
でもRaspberry PiみたいなLinuxが動いちゃう環境ならforth使う理由が殆どないよ。
むしろ生の機械語を直接書かないと駄目なような環境に向いてる。
705:デフォルトの名無しさん
14/06/03 11:48:06.91 XzYLHg3E.net
raspberry pi forth でググったらなんか出てくるみたいだが。
というか、rasp pi 衰退したOSや言語の敗者復活リングみたいになっててオモロイw
706:デフォルトの名無しさん
14/06/04 16:39:08.74 2ij5JthN.net
まさにそれ
URLリンク(star.gmobb.jp)
707:デフォルトの名無しさん
14/08/13 10:22:44.64 MV0il0Eo.net
★2ch勢いランキングサイトリスト★
☆ +ニュース板
・ 2NN
・ 2chTimes
☆ +ニュース板新着
・ 2NN新着
・ Headline BBY
・ Unker
☆ +ニュース板他
・ Desktop2ch
・ 記者別一覧
☆ 全板
・ 全板縦断勢いランキング
・ スレッドランキング総合ランキング
☆ 実況板
・ 2勢
・ READ2CH
・ i-ikioi
※ 要サイト名検索
708:デフォルトの名無しさん
15/02/05 18:47:19.10 Wisgh0P5.net
>>705
709:デフォルトの名無しさん
15/03/28 16:14:22.33 JCsZnGie.net
みんな生きてる?
710:デフォルトの名無しさん
15/03/28 16:52:42.19 iNpGjoni.net
." live!"
711:デフォルトの名無しさん
15/03/30 19:02:34.24 ZHuPrBLY.net
書籍が高すぎる
712:デフォルトの名無しさん
15/03/31 21:06:19.08 2fh/fl2T.net
windowsとLinuxで動作するISO準拠処理系プリーズ
713:デフォルトの名無しさん
15/04/01 21:02:18.21 A/TYeiEx.net
もう漏れしかいないのか
ついに手に入れた「FORTHへの招待」
さっそく読もう
714:デフォルトの名無しさん
15/04/01 23:35:21.77 6DGYq49D.net
懐かしい本だな
それと「スタックコンピュータ―CISC RISCとスタックアーキテクチャ」はバイブルだ
715:714
15/04/02 05:49:55.97 ZYrODdip.net
なんかROMとRAMの説明から始まってて和露他
いいからFORTHの説明はじめろや
716:デフォルトの名無しさん
15/04/09 21:33:48.07 DFOBVCzK.net
読み終わった
>>714とFORTH入門を注文した
FORTH入門は一万円以上した
717:デフォルトの名無しさん
15/04/09 22:41:41.16 LdJOGzfd.net
>>716
原著はWeb上にあるよね
URLリンク(home.iae.nl)
日本語版もほしいけど
718:デフォルトの名無しさん
15/04/12 19:17:21.15 4Fcd4Vhe.net
おk読了
次は>>714だ
719:デフォルトの名無しさん
15/04/12 19:25:26.49 3ERnJGQj.net
>>718
715はスタックマシンとForthへの愛に満ちているので毒されると悶死できるぞ
720:719
15/04/15 17:48:12.32 SFWZvMHG.net
知識不足のため理解しきれていない部分もあるがなんとか最後まで読んだ
↓この文が最高でした
RISCプロセッサのUnix/Cプログラマが8Mから16Mバイトより少ないメモリでは不満足で、
128Kバイトのキャッシュを要求しているときに、Forthプログラマたちはまだ、
スタックマシンに64Kバイト以上のメモリが本当に必要かどうかを熱心に議論している
721:デフォルトの名無しさん
15/04/18 09:39:32.64 W8H7yv/P.net
次の段階へ移行
722:デフォルトの名無しさん
15/05/04 16:20:21.65 McZN4pHS.net
日本のForthコミュニティって無いの?
723:デフォルトの名無しさん
15/05/04 16:33:45.12 /hwLfRb3.net
まだ人いるか?
724:デフォルトの名無しさん
15/05/04 16:56:02.08 szzze12E.net
>>722
つくろーぜ
>>723
いるぞー
725:デフォルトの名無しさん
15/05/04 17:44:37.74 kE0VI/DI.net
>>723
居るぜー
ForthだけじゃなくてLispも入るけど組み込み機器でデバッガを内包したいような時って選択肢無いんだよね。
でLispよりもForthの方が実メモリ食わないんで本当にチープな組み込み機器だとコレ知らないと死ねる。
726:デフォルトの名無しさん
15/05/04 18:06:54.59 McZN4pHS.net
意外と居てびっくりした!
作ろうか
727:デフォルトの名無しさん
15/05/04 18:43:39.64 McZN4pHS.net
>>725
Forthに慣れてる人がどんなデバッガ作るのか(どんなとこ見るのか)気になる
728:デフォルトの名無しさん
15/05/04 19:28:19.74 /hwLfRb3.net
>>727
別の人だけど
デバッガとしてFORTHのインターフェースをつかうってことじゃね?
729:デフォルトの名無しさん
15/05/06 15:56:46.02 pB1d0kiO.net
ちょっと面白いネタ見つけた
「スタックコンピュータ」の中の人、Forthの上でのグラフリダクションを研究してたらしい。
url長すぎって言われたんで↓でググってくれ
TIGRE: Combinator Graph Reduction on the RTX 2000
730:デフォルトの名無しさん
15/05/07 11:41:15.23 PQFXQAsu.net
やってる人はいまもやってるんだねえ
731:デフォルトの名無しさん
15/05/07 14:26:59.51 PQFXQAsu.net
「FORTH入門」すごいつかえる
処理系内部まで書かれているから自作するための参考になる
732:デフォルトの名無しさん
15/05/07 19:26:45.21 43KhqhpP.net
あのイラストも結構好きだ
733:デフォルトの名無しさん
15/05/09 01:15:17.53 91zCXcbE.net
ブート処理にforth 系のficl 使ってたOSがluaに切り替えてくみたいだが
やはりさわれる人の絶対数が多い言語に移ってくもんなのだろうか。
あと昔出版されて今じゃアマゾンでプレ値がついてそうなforth系の本、県立図書館で検索したら閉架に結構あったけど
たまたまなのか規模でかいとこなら普通に在庫あるのかな?
734:デフォルトの名無しさん
15/05/09 08:08:38.65 D66ceLoP.net
>>733
FreeBSD?
735:デフォルトの名無しさん
15/05/10 13:17:55.74 wSg+R97A.net
>>734
そそ。まだ先の予定っぽいけど
736:デフォルトの名無しさん
15/05/11 10:05:34.87 jfjxFlJu.net
FORTHと直接の関係はないんだけど
実行ファイルのダンプを保存してあとから実行するのってどうするの?
LISPの単体で動く実行ファイルの作り方と同じ仕組みだと思うのだけど
どうすればいいのかわからん
737:デフォルトの名無しさん
15/05/13 23:24:57.10 ZhcbFads.net
いまだにわからん
738:デフォルトの名無しさん
15/05/14 14:19:50.60 WhzKfy7h.net
VMをアセンブリでかくかcでかくか
739:デフォルトの名無しさん
15/05/19 12:28:41.76 CmG/oeDB.net
>>736
辞書と変数の設計に依るけど、単純にバイト列を展開するんじゃダメなのかな?
RetroForthがそんな設計だったような。
ちょっと挑戦してみようかな。
740:デフォルトの名無しさん
15/06/23 22:36:02.69 ifeDc53Z.net
そのバイト列に展開するのが難しそうだ
741:デフォルトの名無しさん
15/06/23 22:44:08.10 vwZF4gL5.net
OS依存になるよね、任意にcore dumpできるUnix系だとやりやすいかも
Fig FORTHだとOSに依存しないからできそうな気もする
#MC68000のFig FORTHをmotorolaのTutorial基板で触った事しかないんでうろ覚え
742:デフォルトの名無しさん
15/06/23 23:14:56.31 3QTDhBFd.net
レス早くてワロタ
Perlに同じような機能があったたはずだからちと調べてみゆ
743:デフォルトの名無しさん
15/07/06 12:32:57.19 YQDXrDaK.net
間接スレッデッドコードについて質問があります
IFなどの条件分岐ではそのワードの呼び出し箇所毎にパラメータが違うと思うのですが
その場合でも箇所毎にワードが生成されるのでしょうか?
744:デフォルトの名無しさん
15/07/10 00:42:46.31 wrUthjuc.net
もう解決したのかな?
ちょっとどういう質問なのかわからないので、詳しい人期待age
745:デフォルトの名無しさん
15/07/12 06:46:58.31 AaGOVdy1.net
>>743
いやたしか分岐先アドレスはスレッドに格納されるはず
つまりスレッドにはワードヘのポインタ以外にジャンプ用アドレスが含まれる
746:デフォルトの名無しさん
15/07/17 08:59:20.64 Hk7N5du5.net
全てをアセンブリで実装しようとしたら手がつけられなくなったので
とりあえずコア以外はcで実装すことに変更すた
しっかし本当おもしれえ
nextは僅か4命令だぞ
747:デフォルトの名無しさん
15/07/18 13:27:49.52 xBzkS6DZ.net
コアが実装できたら、後はforthで書こうぜ!
748:デフォルトの名無しさん
15/07/18 13:55:45.77 4KZmkVpL.net
>>746
今時のCPUだとアセンブリの方が実装しやすくない?
749:デフォルトの名無しさん
15/07/18 14:11:29.17 MJkUXIxe.net
URLリンク(blog.livedoor.jp)
750:デフォルトの名無しさん
15/07/18 14:12:29.69 MJkUXIxe.net
Forthユーザ発見
751:デフォルトの名無しさん
15/07/18 15:38:28.81 3XAPUy2X.net
このスレの連中は矢張りRPNやRPL電卓を使ってるのかな?
752:デフォルトの名無しさん
15/07/18 16:33:35.15 5U/xTE1h.net
電卓は持ってないけど、何か試したり計算するときはFactorとか使ってるよ
753:デフォルトの名無しさん
15/07/18 17:09:30.61 5U/xTE1h.net
Sukunaの人とか、もうForth触ってないのかな?
いろいろ話聞いてみたかった。
754:デフォルトの名無しさん
15/08/06 16:45:29.10 2u/3OVyT.net
スレッデッドコード用vm実装記念
755:デフォルトの名無しさん
15/08/06 17:06:23.35 0X10zjbP.net
乙、おめ
756:デフォルトの名無しさん
15/08/08 23:27:26.32 HMF33mTD.net
復活
757:デフォルトの名無しさん
15/08/10 18:29:16.42 XUokgt8i.net
できてきた
I/OをCからアセンブリに実装し直してさらに小さくする
age
758:デフォルトの名無しさん
15/08/13 14:07:02.04 H7bzx0I1.net
ところでみんなコードは小文字大文字どっちでかいてる?
759:デフォルトの名無しさん
15/08/13 16:00:05.24 TIALnNkC.net
>>758
今はfactor大好きなので小文字かなー
昔VT100でForth使ってたときは大文字だったよー(ワードの大文字小文字は入力時に大文字変換されてたりとか:処理系が大文字のみだと辞書のワードを圧縮したりとかしてたりする貧乏メモリ用だったりとか)
760:デフォルトの名無しさん
15/08/15 15:19:53.94 fkPcgHEe.net
小文字で書ぃてるょ
761:デフォルトの名無しさん
15/08/15 15:24:43.03 fkPcgHEe.net
処理系作ってようやく何やってるのかわかったけど、>>56とか>>62面白いなあ
762:デフォルトの名無しさん
15/09/16 00:48:03.18 VN2DGtV9.net
なんども あきては なんども やる
763:デフォルトの名無しさん
15/09/19 22:00:25.70 GM7+1MtI.net
ふーむ少なくとも仮想機械はアセンブリで書かなければ移植は難しいな
一方コンパイラはcで書いてもあとでそれ自身に移植可能
あと最近2chで擬古猫見ないね
764:デフォルトの名無しさん
15/10/12 09:27:11.26 jWUV6tHKA
>ふーむ少なくとも仮想機械はアセンブリで書かなければ移植は難しいな
つURLリンク(www.forthworks.com)
俺ForthではあるけれどVMはCで簡潔に書かれているから
めちゃくちゃいろんな言語に移植されて動いてるぞ
765:デフォルトの名無しさん
15/10/12 21:43:04.76 IsRJDN+gd
>>764
Cで書かれたのは移植性が凄く高いけど
ハードウェアスタックを使いにくいので
古いCPUでは性能が大きく下がっちゃう
というか、VMって言うレベルじゃないでしょ
アセンブラでもわずか数行~十数行
766:デフォルトの名無しさん
15/12/31 06:27:31.47 shctMMuK.net
あげ
767:デフォルトの名無しさん
15/12/31 06:51:07.49 shctMMuK.net
URLリンク(phaendal.hatenablog.com)
↑FORTHの関しての記事があるのであげとま
768:デフォルトの名無しさん
15/12/31 10:17:38.69 KKAqg1l1.net
馬鹿には無理
769:デフォルトの名無しさん
15/12/31 10:33:47.60 /wbyPP1f.net
便乗age
URLリンク(research.microsoft.com)
770:デフォルトの名無しさん
16/01/01 09:58:20.44 kXdPExCb.net
あけおめ!
771:デフォルトの名無しさん
16/01/10 13:33:35.16 z1pxpAJ/.net
人いるんか!
772:デフォルトの名無しさん
16/01/10 23:48:42.16 /2nnPZOa.net
フォースの覚醒
773:デフォルトの名無しさん
16/01/11 08:24:42.35 lZl+kkOU.net
復活の時は近い
774:デフォルトの名無しさん
16/01/11 16:40:56.58 I0GTrlSH.net
Erlang/Elixirに浮気中
775:デフォルトの名無しさん
16/01/11 19:48:51.43 nxq211rs.net
>>774
あれ、俺書き込んだ?
ってマジで思った
776:デフォルトの名無しさん
16/01/12 10:27:02.83 LOHPMzQN.net
今処理系実装してるけど実用的にしようとなると結構難しいな
777:デフォルトの名無しさん
16/01/18 21:50:56.98 jq3Y7yyE.net
この言語の面白いところは低水準で動的なことをすべて行えること
コールスタックまで直接制御できるから継続のようなことも簡単にできる
一方でコンピュータサイエンスとしてのセンスはかけらもなくとても原始的だ
778:デフォルトの名無しさん
16/01/21 10:50:22.29 aPv8m3ec.net
だれかこいよ
寂しいな。。。
779:デフォルトの名無しさん
16/01/21 12:56:52.61 zpe1QHZ3.net
>3 pop
780:デフォルトの名無しさん
16/01/21 14:03:53.56 aPv8m3ec.net
>>779
∧_∧
∧_∧ )
( ))
;つ 乙ノ
(_ ノ |
((_ノ~∪
781:デフォルトの名無しさん
16/01/22 02:24:26.04 EeNvrSL9.net
>>779
それhoshuや、pushちゃう
自分が幼少の頃に親父の読んでたInterfaceって本のなかにtitって言語の紹介があったのがForth系言語のなれそめだったなぁ。
そのアトはHPの電卓とFigForthの68K版をMC68000のKit上で動かしてからはまった感じだわ
782:デフォルトの名無しさん
16/01/22 13:27:11.36 7GZnHmXQ.net
ErlangでFORTHっていうかideoneすげー
URLリンク(ideone.com)
783:デフォルトの名無しさん
16/01/22 15:42:45.07 dviPRblt.net
まだちゃんといて安心したよ。。。
784:デフォルトの名無しさん
16/01/24 15:06:52.25 Ih+3kdbT.net
いまつくっているんだがやはり設計が古すぎる
予定を変更してシェルを分離させる
785:デフォルトの名無しさん
16/01/24 18:12:17.44 1S5ux+s6.net
意味が分からん。主語くらい略さないで入れろ。
786:デフォルトの名無しさん
16/01/26 04:19:18.92 fodjyooQ.net
標準のFORTHでバイナリを呼び出すための機構ってある?
787:デフォルトの名無しさん
16/01/27 09:41:43.11 PS/Qpp4W.net
stack overflow
788:デフォルトの名無しさん
16/01/27 21:20:50.27 JOMz1gR9.net
処理系によるかもだか、
スタッフオーバーフローだけじゃなくアンダーフローも味わえる
789:デフォルトの名無しさん
16/02/15 15:23:31.07 z4NOVyYm.net
失礼
スタックマシンのチップを購入したい
どこかいい入手ルートはないか
790:デフォルトの名無しさん
16/02/16 02:45:46.59 WhucjpIR.net
>>789
ARMとか十分にスタックマシンしてると思うのだが
昔の本当にちっちゃいやつが欲しいってのだと今ならトラ技付録FPGAで作る方が入手性は優しい希ガス
791:デフォルトの名無しさん
16/02/16 09:14:36.21 CursrUUy.net
>>790
そうではないです
データスタックを持っているマシンがほしいのです
792:デフォルトの名無しさん
16/02/16 19:04:31.14 eSxr0LUY.net
具体的に欲しいチップを書いた方が
793:デフォルトの名無しさん
16/02/18 20:54:10.95 affLGCHB.net
間接スレッデッドコードはネイティブと比較してどのぐらいメモリ削減効果があるのでしょうか
どなたかデータかその参照を教えてもらえませんか
794:デフォルトの名無しさん
16/02/22 15:12:30.92 p5oR4ktM.net
GNUの実装についてホムペは変わってないけど開発進んでるのな
しかもAndroid版も有りやがる
795:デフォルトの名無しさん
16/03/12 12:26:01.29 x2aIRV1Q.net
>>789
greenarrays.com
796:デフォルトの名無しさん
16/03/12 23:49:41.78 88to1Dnq.net
このFORTHってのは少なくとも古典的なものは強くノイマン型アーキテクチャに依存してるのな
797:デフォルトの名無しさん
16/03/13 14:02:52.50 KRhmXkXRG
>>791
MC68000系ならデータスタック放題
>>793
間接と直接の違いをインストラクションレベルで比較すればおおよそわかろうに
逆にCPU絞らないと答えようない
>>796
いろんな意味でアセンブラだったから
798:デフォルトの名無しさん
16/03/13 19:45:46.56 B/df0Unxc
こっちでレスしても
799:デフォルトの名無しさん
16/03/13 20:15:36.16 KRhmXkXRG
うん
なんとなくわざと
800:デフォルトの名無しさん
16/03/16 07:21:36.48 4qqZTEIs.net
QUIT ( -- ) Clears all stacks and returns control to the terminal. No message is given.
GForth
1 2 3 4 5 ok
.s <5> 1 2 3 4 5 ok
quit
.s <5> 1 2 3 4 5 ok
は?だれか説明してよ!
801:デフォルトの名無しさん
16/03/28 06:53:30.25 pr7JX2mY.net
過疎ってるなぁ
802:デフォルトの名無しさん
16/03/30 19:26:03.16 qYZ8N3Ke3
>>801
そうだね~
独学で始めた人が辿り着いて
飽きちゃうか
本格的な言語の実装を勉強しはじめると
離れていっちゃう感じ
803:デフォルトの名無しさん
16/03/31 17:14:17.24 HiG8h3J6.net
windows10 64bit版にてswiftforth評価版が動きません。
どなたか解決策を知りませんか?
804:デフォルトの名無しさん
16/04/01 13:02:30.15 50lRt7vL.net
流行る要素が無いよね
805:デフォルトの名無しさん
16/04/02 23:14:22.41 2gBYslTZ.net
>>803
俺もだ
誰かおすえて
806:デフォルトの名無しさん
16/04/04 07:02:35.55 hhHTa9vL.net
ねんがんの「パーソナルエキスパートシステム」をてにいれたぞ!
807:デフォルトの名無しさん
16/04/06 21:09:55.72 s4LMXlxO.net
>>806
一体なにができるの?バカな漏れには全くわからん
808:デフォルトの名無しさん
16/04/07 14:56:44.89 eXkP/TbN.net
「パーソナルエキスパートシステム入門」だった…
>>807
forthでエキスパートシステム書くって本らしい。
(まだ来てない。)
809:デフォルトの名無しさん
16/04/13 21:48:47.74 eHTpuWMC.net
>>808
なんだそりゃ!?
相も変わらずFORTHコミュニティは我が道を逝くな(藁('A`)
810:デフォルトの名無しさん
16/04/14 01:11:18.38 FsF2j7W4.net
>>809
Use the forth Luke.ってくらいだしな
811:デフォルトの名無しさん
16/04/27 03:12:26.27 fW/sUK0/.net
FORTH社公式サイトなんかモダンな感じにリニューアルされているぞ
812:デフォルトの名無しさん
16/04/28 06:46:01.82 6C4hGrzb.net
ほんまや…
つか、キャッチ見る感じFPGA対応とかやってっぽい?
813:デフォルトの名無しさん
16/04/29 00:42:56.46 T+fk1/ws.net
それに比べMPEときたら。。。
814:デフォルトの名無しさん
16/04/30 13:33:33.16 +u6TG0xk.net
>>812
なにをもって対応というのか知らんがFPGAを使ったソリューションはあるね
815:デフォルトの名無しさん
16/05/03 01:28:59.09 3SS4lwd4.net
XTがImmediateかどうか調べるワードってある?
816:デフォルトの名無しさん
16/05/03 13:54:49.01 nk6XRDP5.net
>>814
forthでfpgaの回路組めるとかだったら面白いなw
817:デフォルトの名無しさん
16/05/06 02:21:23.49 FS8HTadE.net
いま逆ポーランド記法で書ける正規表現エンジンを作ろうか考えているんだけどAB*C|こんな感じにね
もうすでにあったりするんだろうか?あForth上でね?教材としてあるのは知っているから
Forthのもつ動的コンパイルを利用することで高移植性のJITエンジンが実装できると思ってね
( 自らをコンパイルすることができる言語はこういったスクリプトやインタプリタを移植性を保ったまま簡単に高速化できるところが素晴らしいよね)
エグって呼んで~
818:デフォルトの名無しさん
16/05/06 02:23:03.98 FS8HTadE.net
>>815
たぶん標準ではないな
文字列ベースならFINDがあるんだけどね
819:デフォルトの名無しさん
16/05/31 01:39:08.36 NOiY1sCF.net
forthに足りないのはコマンド言語だ。
forthのプロシージャー呼び出しはすべてディクショナリ内に限られるため外部プログラムを効率よく利用できない。
シェルスクリプトのように外部forthプログラムをうまく呼び出す機構があればいいが。。。
スタックをパイプのようにプログラムで共有するとおもしろいかもしれない。
820:デフォルトの名無しさん
16/10/07 16:43:56.85 oA26EQDq.net
gforthで実数演算たとえば、
1.0 +2.0
の様なものをしたいのですが、
1.0e0 2.0e0 + .
としても
1.0e0 2.0e0 f+ .
としても結果が得られません。
実数演算はどうすればいいのでしょうか。
ご教示お願いいたします。
821:デフォルトの名無しさん
16/10/07 17:47:53.85 ah4nbj/y.net
URLリンク(www.h7.dion.ne.jp)
822:デフォルトの名無しさん
16/10/07 19:28:13.23 oA26EQDq.net
>>821
これは、読んだのですが、実例が初心者には敷居が高くて
よく理解できません。
2.0 + 3..0 のような簡単な例を示した物は
ないでしょうか。
823:デフォルトの名無しさん
16/10/07 23:18:29.98 oA26EQDq.net
>>822
結局、FACTORに乗り換えました。
こちらの方が判り易くて、すぐ実数演算(浮動小数点演算)ができるように
なりました。
824:デフォルトの名無しさん
16/10/08 01:43:58.77 ID/gDwfMW
>1.0e0 2.0e0 f+ .
これの最後を 「.」ではなく「f. 」にすれば、おそらく望んだとおりの結果が得られるかと
つまり、
1.0e0 2.0e0 f+ f.
825:デフォルトの名無しさん
16/10/08 01:48:01.15 ID/gDwfMW
わははw
826:デフォルトの名無しさん
16/10/09 06:39:24.29 pfNs/KcX.net
週明け、ちょっと面白いforthの論文読めるかもしれない。
forthっていうより、その上に作られたkevoって風変わりなOOP言語のだけどさ。
827:デフォルトの名無しさん
16/10/17 19:24:52.26 HyFRmQUJ.net
>>820
その場合 . じゃなくて f.
828:デフォルトの名無しさん
16/11/06 00:15:56.03 RpZeQ9IA.net
Factorのチュートリアル分かりにくい。Racketを見習え
829:デフォルトの名無しさん
16/12/30 20:20:02.53 XiEG6f+8.net
もう2016年も終わりだな
830: 【末吉】 【2等 10,000,000円】
17/01/01 11:49:42.83 wqx7ZaQB.net
.
831:デフォルトの名無しさん
17/01/03 10:53:07.10 KXR/d/nR.net
ことしもよろしく!
832:デフォルトの名無しさん
17/01/03 12:26:49.35 qzU7aiCI.net
>>830
2等おめ
833:デフォルトの名無しさん
17/02/04 16:41:26.43 6xXEHIbo.net
うんこ
話題ねーなー
834:デフォルトの名無しさん
17/02/04 16:44:12.53 e9aNESBj.net
あへ
835:デフォルトの名無しさん
17/02/05 14:14:31.59 nBEZPMY5.net
なんか話せ
836:デフォルトの名無しさん
17/02/28 21:19:29.80 5qIw+x2+.net
factor 1.0 マダー
837:デフォルトの名無しさん
17/03/03 18:00:20.86 3XbKihVE.net
うんやってみようとおもう。
ところで仕様書(規格書)はどこにあるんですかね?
838:デフォルトの名無しさん
17/03/03 18:29:59.44 IUFykjWp.net
>1- よめ
839:デフォルトの名無しさん
17/03/04 00:48:33.45 4xESmR76.net
>>838 わかんない
URLリンク(www.openfirmware.info)
これかな?
840:デフォルトの名無しさん
17/03/04 01:07:38.10 4xESmR76.net
URLリンク(www.forth.org)
こっち
841:デフォルトの名無しさん
17/03/04 12:32:44.96 GRvQ2lmz.net
>>782
まだ残ってたのか
842:デフォルトの名無しさん
17/04/03 11:16:21.17 UVNX4qSu.net
みなさーん生きてますかー?
843:デフォルトの名無しさん
17/04/03 19:02:54.60 Z+6yuhBz.net
いきとるぞー
純粋なforthは全然さわらずfactorばっかりだけどな
あと組み込み機でTITもどきかなー
844:デフォルトの名無しさん
17/04/03 19:11:44.32 UVNX4qSu.net
次スレでは皆が胸を張れるように「スタック指向言語」「連鎖型言語」みたいなくくりにしよう!
845:デフォルトの名無しさん
17/04/04 02:27:49.55 WA/rnyB6.net
>>844
forthだとスタックに積まれたオブジェクトに関数ってメッセージを送るって言うことだとおもうのだけど。
そういう単純な理解じゃ駄目なの?
言語レベルで隠蔽されていることを生で扱うって事で良いんじゃ無いの?
Lispだと関数の呼び出しが括弧で括られいるから呼び出しの引数の扱いが閉じられているけど、forthの場合は関数が必要な分を消費するというか
846:デフォルトの名無しさん
17/04/04 09:11:34.40 89iVo3+8.net
メッセージ?違う言語と勘違いしてそう
847:デフォルトの名無しさん
17/04/04 11:14:00.29 wm/ZDuC6.net
コールスタックとforthのスタックは別物だよね。
848:デフォルトの名無しさん
17/04/05 02:36:38.33 9ywW0Xq5.net
>>847
2つあるんだよ、関数呼び出しの戻りアドレス用のスタックと別にもう一つあるんよ
849:デフォルトの名無しさん
17/04/05 14:29:17.29 +eJqUohN.net
アキュムレータ
850:デフォルトの名無しさん
17/04/11 00:06:23.90 N954SJpH.net
forthがスタック指向であるようにアキュムレータ指向のプログラム言語というものは作れるのかな
851:デフォルトの名無しさん
17/04/11 01:23:43.97 Y8UBVT27.net
>>850
マジレスするとmacroありのassemblerじゃねぇの?
macro80やslrasmでもできたぞ
852:デフォルトの名無しさん
17/04/15 23:36:33.20 bK+0/AQY.net
>>851
マクロだけでは構文は抽象化出来てもシステムとして抽象化しきれないと思うけど
853:デフォルトの名無しさん
17/04/16 02:22:54.36 GjRoh4Fn.net
単に計算は常にAXを使うってだけなら特に面白みもなさそう
スタック無しでレジスタ無限ということなら……単に再帰呼び出し禁止なだけの普通の言語だよなあ
854:デフォルトの名無しさん
17/04/17 06:41:15.22 Oz2f+5Ln.net
>>852
ニクラウス・ヴィルトの言うところの条件分岐とか繰り返し構文はチョロく書けるよ>>macro80とslrasmとかのマクロアセンブラ
つかmacro80とか8bit時代のあのメモリでよくやるわと思う。
forthスレっぽいネタだと昔(1981年の8月号だと思う)のCQ出版の記事でTITって言語があってこれがマクロアセンブラでforthを実装するって記事だったような?
855:デフォルトの名無しさん
17/07/19 19:04:38.23 IRmsE5AJ.net
1 . 2 . 3 . 4 .
856:デフォルトの名無しさん
17/08/13 12:07:02.89 BkdmOdbH.net
実に簡素で危険で強力だ。
貧者の言語だな。
俺にふさわしい。
857:デフォルトの名無しさん
17/09/03 23:56:49.18 sfrNKeHf.net
もうオレしかいないのか。。。。。
858:デフォルトの名無しさん
17/09/04 18:01:02.81 XVvO50gB.net
無いのはネタだよ
859:デフォルトの名無しさん
17/09/05 22:07:51.16 jOSE+tCs.net
俺も見てるよ
860:デフォルトの名無しさん
17/09/06 12:34:34.16 nQAnFQdT.net
時々見に来てる
861:デフォルトの名無しさん
17/09/06 15:10:52.90 p7vL1/ES.net
点呼スレ
862:デフォルトの名無しさん
17/09/17 21:34:39.86 ozIOAGyP.net
age
863:デフォルトの名無しさん
17/09/18 20:29:59.37 lhUDwV9a.net
これまで全く気にしたことないけど、forthって動的にリンクするライブラリの類は存在するの?
864:デフォルトの名無しさん
17/09/19 17:19:50.82 xxOzXrDl.net
OPT
865:デフォルトの名無しさん
17/10/10 10:11:32.51 jFJIQFdq.net
いま処理系書いているわけどすよ
古典的なディクショナリに含まれる変数領域(エントリのitcならpfバイトコードならcf)って実行時書き込みが必要だからrom化できないよね?
ディクショナリをromに組み込む時どのようにしたらいいの?
866:デフォルトの名無しさん
17/10/13 08:39:42.67 vQb8BZek.net
?単にリンク時に再配置すればよいのではないだろうか
867:デフォルトの名無しさん
17/11/18 00:00:24.25 u5vhQC2r.net
age
868:デフォルトの名無しさん
18/02/02 03:15:38.93 ZCx6BMYx.net
保★守
869:デフォルトの名無しさん
18/02/03 09:42:57.30 qWVkS+Es.net
やってみ
870:デフォルトの名無しさん
18/05/23 20:31:13.02 Au5e7VGg.net
僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
96NO5
871:デフォルトの名無しさん
18/06/04 02:21:55.88 qEnuCrwb.net
本当に話題がないんですね
872:デフォルトの名無しさん
18/07/04 22:35:26.93 gFgZc5FG.net
SQU
873:デフォルトの名無しさん
18/07/06 12:19:01.04 uTPDH9XV.net
96NO5
874:デフォルトの名無しさん
18/12/08 12:02:33.98 FYXcP+Xf.net
初心者ですがthinking forth読んでます。
さっそく詰まりました。
: + BL WORD NUMBER DROP ;
で+を再定義すると中置記法で3 + 4できるとあり、確かに7が得られるのですが、
どうしてそうなるのか分かりません。
(別に中置記法で書きたいわけではありません)
BLが(ボーイズラブではなく)空白の文字コード、
WORDがアドレスを得る、
DROPは . と同じですよね?
NUMBERがポイントなのでしょうが…
どなたか解説してくれませんか?
875:デフォルトの名無しさん
18/12/08 14:44:25.82 mtUDrJjH.net
URLリンク(books.google.co.jp)
URLリンク(www.nicholson.com)
URLリンク(www.forth.com)
URLリンク(www.forth.com)
URLリンク(galileo.phys.virginia.edu)
876:デフォルトの名無しさん
18/12/19 17:23:11.16 +/rbvZbE.net
>>874
昔々にFORTHをほんのちょっとかじっただけの通りすがりだけど、最後に + が
抜けとるよね。
: + BL WORD NUMBER DROP + ;
その抜けとる(再定義前の後置記法で加算する)+ に 3 4を渡して
3 4 +
をさせるために4をスタックに積むことをさせとるんだと思う。
空白で区切られた”4”を取ってきて、数字に換えてスタックに乗せといて(元々
の) + に渡たしてる、かな。
. は 印刷で、DROPはスタックから一つ捨てるのような。
ていうか、そこ読んでる時点ではわからんでもいいのでは。
877:デフォルトの名無しさん
18/12/26 20:16:53.64 v8erlN15.net
>>267
この事情おしえて!
できるんなら全部後置がいいと思ってた。
どんななるほどな理由があるんだろう?
878:デフォルトの名無しさん
18/12/26 21:18:44.18 Sasn9R68.net
; とか UNTIL のように可変長引数を扱うには先頭に目印が必要になるね。
>>265がちぐはぐと言っているのがどれのことなのかはわからんが。
879:デフォルトの名無しさん
18/12/26 21:40:46.64 v8erlN15.net
じゃあ1足して2掛けるワードhogeの定義は
: hoge 1 + 2 * ;(hogeとは:1を足して2で掛けることである)
だけど別に
: 1 + 2 * hoge ;(1を足して2で掛けることをhogeとする)
とか
: 1 + 2 * ; ." hoge" def(1を足して2で掛けることを"hoge"という名前で定義する)
みたいな文法もあり得たのかな?
本体、定義するワードの識別子名
という並びではなく、
定義するワードの識別子名、本体
の並びなのは、何かの事情があっての必然なのか、たまたまなのか、それが知りたいです。
880:デフォルトの名無しさん
18/12/26 22:58:21.72 Sasn9R68.net
機能的にはどっちでも可能だろうけど、人が書くコードとしては識別子を前に置く方が
わかりやすいからじゃないかと思う。
あと、ディクショナリに登録する際に : からスタックトップ方向にスキャンするなら
識別子が後ろに置かれると一つ先読みが必要になってちょっと面倒くさい。
881:デフォルトの名無しさん
18/12/27 01:01:36.58 KLGborwt.net
forthって人の都合よりコンピュータの都合優先みたいなイメージだったので人の読みやすさのためだったとしたら意外でした。
後半は納得しました。そうかそれでか…
ありがとうございました。
882:デフォルトの名無しさん
18/12/27 09:49:16.14 0qVX2+Xi.net
>>879
昔の貧弱なメモリとCPUでコンパイラ作るんだから
文法優先じゃなくてコンパイラの事情優先でそうなんだろ
883:デフォルトの名無しさん
19/06/19 04:58:42.00 tVNS+22r.net
【出資】松本卓朗 人工知能詐欺【注意】
スレリンク(rikei板)
884:デフォルトの名無しさん
19/07/05 18:14:54.04 E00Aj00V.net
8年と半年掛かって>>624の言ってる事がようやくわかった。
ここの人って、何周か回っちゃってFORTHに行き着いてるんだね。
いや、SECDマシンってFORTHそっくりじゃん?!と書きに来ました。
では、また・・・。
885:デフォルトの名無しさん
19/08/28 00:27:04.68 1gWoA2G/.net
URLリンク(ja.m.wikipedia.org)
でも触れられている、ムーアが間接スレッデッドコードの発明について述べたというバイト誌のForth特集、なんと今ではWebで読めちゃうw
当時の誌面のスキャン。なんと当時の誌面広告もノーカットw
URLリンク(archive.org)
さらに親切なことにフルテキストまで公開されてる。
URLリンク(archive.org)
興味のある方、ぜひ一読を。
886:デフォルトの名無しさん
19/08/28 01:40:32.21 azl3m+0S.net
紙屑ωωω
887:デフォルトの名無しさん
19/08/28 07:19:51.77 iwi2TSA5.net
>>885
ムーア御大の直々の解説か
888:デフォルトの名無しさん
20/04/15 15:05:18 SXQ2sjzm.net
Oforth使ってる人いますか?
なんとなくSmalltalkぽいですね
889:デフォルトの名無しさん
20/11/28 11:39:10.89 Gr5a9V0P.net
apt のgforth.73使ってたんだけどアップデしたらメチャクチャ快適になった…
色付くわhelpコマンド付くわでしゅごい
890:デフォルトの名無しさん
20/11/29 08:16:26.52 sDMgzk6G.net
>>889
この言語で何作ってる?
891:デフォルトの名無しさん
20/11/29 20:10:16.85 JzQZ+ZwM.net
インスピレーションを得てるよ()
892:デフォルトの名無しさん
21/01/04 10:36:47.94 62MOX0QC.net
>>821
このurl、forthで検索するとあちこちに見掛けるんだけど閉鎖しちゃったのかな
waybackにもgoogle cacheにも残ってない…
893:デフォルトの名無しさん
21/01/04 15:05:51.77 VbZ6KZlq.net
>>892
>waybackにもgoogle cacheにも残ってない…
URLリンク(web.archive.org)
894:デフォルトの名無しさん
21/01/04 18:39:50.21 VbR1j+mv.net
>>893
使い方が悪かったのかも!ありがとう!
895:デフォルトの名無しさん
21/03/11 07:45:30.66 ifNxw6Pa.net
技術的というより哲学っぽいので敬遠してたthinking forth今更読んだけど代名詞の言語というのがしっくり来た
どんな言語でもちゃんと書かれれば最上層のコード派読みやすいけどForthがとりわけ読みやすいのはこれだよな
最下層はほとんどアセンブラなのにこの極端性よ
896:デフォルトの名無しさん
21/03/11 07:58:59.35 ifNxw6Pa.net
でもスタックイジイジするのパズルみたいでめちゃくちゃ楽しいんだよなあ、くやしい…
897:デフォルトの名無しさん
21/08/23 12:03:08.07 YpDpq+5R.net
もはや(8ビット)PCのためではなく(マニアックな)人間のための言語。
898:デフォルトの名無しさん
22/01/01 09:37:17.88 6v4FYv8q.net
あけおめ!
899:デフォルトの名無しさん
22/01/10 20:06:51.30 Ge4oCWB3.net
久々に書き込みあったと思えば
あけおめ!
今どきforthは趣味だろうけど良い趣味だよ
あとAndroid版のgforthは関数電卓代わりに毎日使ってる
900:デフォルトの名無しさん
22/05/16 14:09:01.58 /9w+5JsX.net
保守
する価値がまだあるだろうか
901:デフォルトの名無しさん
22/05/17 10:45:03 u8alpQJv.net
今勉強中だけどおもしろい
しかしパーシングワードはどうにかならんかったのか
定義の底に埋もれたnameが解釈時に吸い込んだりするのが文脈飛んで分かりにくい…
psみたいに/name {code} exch def方式のほうが一貫性あったのではないか
902:デフォルトの名無しさん
22/05/17 10:55:12 u8alpQJv.net
FORTHへの招待って古い本買ったんだけど、PICK/ROLLのindexが1始まりだったり、今の処理系と結構違うよね
長々とハードの話から始まり機能紹介までで終わってて、具体的なコーディングテクニックまでたどり着いてない…
モダンでオススメな本ってあるかな
903:デフォルトの名無しさん
22/05/19 08:44:16.13 13z7p19v.net
モダンなFORTHなど存在しない!
904:デフォルトの名無しさん
22/05/20 15:21:07.51 B9Pct0M/.net
初学者だけど
まあレトロなところに惹かれたのは否定できないな
有名な"FORTH思考"とか、一般プログラミング作法の啓蒙書としては素晴らしい
ブロックの章立ての章とかよく考えさせられる、まあ実ファィルに置き換えて写経してるけど
905:デフォルトの名無しさん
24/01/01 09:03:44.52 MIyexYoQ.net
あけおめ!
906:デフォルトの名無しさん
24/01/21 09:24:04.48 rroAgTgL.net
古の8bit機みたいな小さいマシンでnextルーチン書くところから始めてみたい
907:デフォルトの名無しさん
24/05/04 06:00:27.59 +DAXDwQe.net
標準FORTHが国会図書館のサイトで読めるようになってる(要登録
URLリンク(dl.ndl.go.jp)
他にも古い本が色々見られるようになったっぽい。
908:デフォルトの名無しさん
24/05/05 14:45:30.58 Fv0JPqsX.net
読もう。持ってたのは昔無くした