問題タブ [forth]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
forth - Gforth のダブルスへの変換における不規則性
Forth でs>d
and関数がどのように機能するかについて、かなり混乱しています。d>s
私が読んだことから、入力16.0
するとスタックに置か160 0
れ(2つのセルを占めるため)、d.
表示され160
ます。
ここで、入力すると、スタックが前の例のようになり、表示16 s>d
されることが期待されます。ただし、スタックはとです。160 0
d.
160
16 0
d.
16
ダブルスの入力を間違えていませんか? 「単一セルの値を二重セルの値に変換するほど単純ではありませんか?s>d
この不規則性の理由はありますか?手がかりは大歓迎です.
c++ - Homebrew を使用して OS X Mavericks (10.9) に Gforth をインストールする際のエラー
MacBook Air (OS X Mavericks (10.9) を実行) にGforthをインストールしようとしていますが、次のエラーが発生します。brew install gforth
問題が何であるかはわかっていますが (libffi は C++ 標準ライブラリの古いバージョンでビルドされていました)、この問題をHomebrewで修正する方法がわかりません。libffi をアンインストールして、Homebrew 経由で libc++ を使用して再インストールできますか?それとも、より抜本的な対策を講じる必要がありますか?
forth - Factorcode.org の Web サイトがダウンしていても、Factor バイナリを取得できますか?
更新 (2014 年 3 月 12 日):
factorcode、planet-factor、builds.factorcode、および concatenative のすべてのサイトが復活しました。ダウンロードが復活しました。サイトが別のホスト (Rackspace?) に移動され、大幅に刷新されたようです。
(これは、クローズドな質問と見なすことができます。)
Factor プログラミング言語の最新の Windows バイナリを入手しようと試みましたが、 factorcode.orgのWeb サイトがダウンしているように見えるという事実に困惑しています。
残念ながら、すべてのダウンロード リンクは、特にbuilds.factorcode.org
.
いつからこうなったかわかりませんが、初めてではないようです… 3月に入ってからダウンしているようで、 10月と12月にまたノイズが出ています。
Factor はオープンソースであるため、バイナリが別の場所にミラーリングされることを期待していました。しかし、かつて SourceForge にあったものはに削除されたようfactorcode.org
で、Factor のメインGitHub リポジトリも でホストされているようfactorcode.org
です。
バイナリを取得するにはどうすればよいですか? おそらく別の方法がありますか?
(追伸: これらの関連サイトもダウンしています: Concatenative.orgとPlanet Factor。)
私はかなりの量の Forth を使用しており、最近はFactorについてよく耳にします。Google がSlava Pestov (Factor の作成者) とDaniel Ehrenberg (Factor の開発で Slava と協力している) を雇ったように見えることを考えると、いわば「タイヤを蹴る」という話題が何であるかを見てみたいと思いました。
string - Gforth を使用した複数の文字列連結でのスタック アンダーフロー
Rosetta コードから、Forth で文字列を連結する方法として以下を使用しています。
このコードを使用して、複数の文字列を連結できるようにしたいと考えています。ただし、Gforth では次のように失敗します。
私の基本的な Forth エクスポージャーから、スタックに 3 つの文字列を置き、スタックの一番上の文字列をその下の文字列に追加し、スタックの新しい文字列を一番下の文字列に再度追加するというコードが見えます。
このコードが最後の +place でアンダーフローするのはなぜですか? これを回避する方法はありますか?
macos - For エディター/カスタマイズ可能なエディター
Forth変数、プログラムなどのフォントの色を変更するためにカスタマイズできる/できるOS Xエディター(できれば専用のForthエディターですが、存在するとは思えません)を探しています。そうでない場合、回避策はありますか?
forth - リターン スタックを含む Forth スタック コメント
リターンスタックが登場したとき、スタックコメントはどのように見えるべきですか?
この単語は 5 つのセルを想定し、2 つのセルを返しますが、リターン スタックを使用すると、括弧の間はどうなるでしょうか? たとえば、スタック コメントは次のように表示されます。
forth - 単語または変数から文字列を追加するときのエラー
gforth で 2 つの文字列を追加しようとしていますが、恐ろしいエラー メッセージが表示されます。
正常にs" foo" s" bar" append type cr
動作しますが、変数に文字列を格納したり、単語から文字列を作成したりするとすぐにエラーが発生します。例えば:
実行すると、次のエラーが発生します。
私は C に精通しているので、Forth の使い方が間違っていることは明らかです。Fore でのメモリ管理について、非常に基本的なことを学ぶ必要があると思います。
ここで何が問題なのか、どうすればよいのか、誰か説明してもらえますか?
変数に格納されている文字列を追加しようとすると、問題が発生します。
これは、私が壊さなければならないループで終わります:
参考までに、私は Mac OS X で gforth 0.7.2 を使用しています。
アップデート
の定義を見ることができますappend
:
では、Forth で自分でメモリを管理する必要があるように見えますか? もしそうなら、どのように?
解決
Andreas Bombe が以下の手がかりを提供します。動作する最終的なプログラムは次のようになります
出力は