問題タブ [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.
ebnf - while ループの Forth 言語 EBNF ルール
Forth while ループ (またはその他のループ) を記述するEBNFルールはありますか?
ebnf - 無限ループまたは if ステートメントの Forth 言語 EBNF ルール
Forth 無限ループまたは if ステートメントを記述するEBNFルールはありますか?
math - Forthで2つの整数を除算して結果をfloatで取得する方法は?
単精度と倍精度の間で変換できる方法を探しています。1 つの例は、2 つの整数を除算して浮動小数点数の結果を取得することです。そんなことがあるものか?
c - Cで書かれたFORTHのような言語インタプリタでLOOPを実装する方法
私はCで単純なスタックベースの言語を書いていて、ある種のループ構造や先読みシンボルを実装する方法を考えていました。このページのコードは少し長いので(200行以上)、GitHubリポジトリに配置しました。
編集:メインプログラムはファイルにありますstack.c
。
words
編集:コードは、FORTHのように入力を取り込むだけです。scanf
左から右に使用して動作します。次に、一連のif
sとstrcmp
sを使用して何をするかを決定します。それだけです。
java - Java 仮想マシンの言語は不可知論的ですか?
Java 仮想マシンは「もともと」Java プログラミング言語用に設計されたと言っても過言ではありませんが、現在では、他の開発者が Scala、Jython、JRuby などの Java バイトコードにコンパイルされるプログラミング言語を作成できるようになっています。
インターフェイス、メソッド、フィールドなど、Java バイトコードにはまだ「オブジェクト指向」の参照があります。たとえば、invokespecial は「オブジェクト」メソッドの呼び出しです。
これは、言語に依存しない純粋な命令セットを備えた純粋なスタック仮想マシンではありません。たとえば、純粋な FORTH 実装にはスタック操作しかありません。
問題は、JVM 言語にとらわれないかどうかです。
forth - リターンスタック操作は、Gforth0.7で「無効なメモリアドレス」を生成します
私はここでForthを学んでおり、リターンスタック操作に取り掛かっています。
したがって、Ubuntu 11.04 x64でコンソールを使用して、TOSをリターンスタックに入れようとしていますが、これは発生します。
私はここで何が間違っているのですか?
segmentation-fault - gforthmiセグメンテーション違反
LinuxでGforth0.7.0を使用しています。gforthmiを実行しようとするたびに、使用するパラメーターに関係なく、次のようにセグメンテーション違反が発生します。
32ビットマシンと64ビットマシンの両方で試してみましたが、結果はまったく同じでした。
私は何が欠けている/間違っているのですか?ヘルプ/アイデアをいただければ幸いです。TIA、
-
バフマン
android - DalvikVMはどのようにしてI/Oにアクセスしますか?
最近、DalvikVMに興味を持ちました。ウィキペディアといくつかのスライドから、DalvikVMに関する基本的な情報を知りました。まだわからないことがあり、次のようなドキュメントを簡単に見つけることができません。
DalvikVMはどのようにしてI/Oにアクセスしますか?
ネイティブメソッドを呼び出すオペコードが表示されません。プレフィックス「OP_INVOKE」が付いた名前のオペコードはすべて、.dexファイル(Dalvik実行可能ファイル)のメソッドを呼び出しているようです。たぶん私は間違ったバージョンのオペコードの説明をチェックしましたか?)
ところで、AndroidにユーザーフレンドリーなForthの実装はありますか?
サポートしていないAndroidForthを試しましたdup
!
arrays - 文字列の配列を実装するにはどうすればよいですか?
Forthのスタックに数値が与えられたときに、配列から文字列を生成する単語を実装しようとしました。
私の最初の素朴な試みは:
これは受け入れられましたが、期待どおりに機能しませんでした—myarray @ type
一貫性のない出力が生成されます(「Alpha」が出力される可能性があるという私の素朴な期待の代わりに)。
Webを検索したところ、Gforthのドキュメントで、で作成された文字列s"
の有効期間が限られていることがわかりました。これは、私の仮説が最初から失敗することを意味します。一方、通常のオブジェクトの配列でさえ、LenのForthチュートリアルのForthセクションの配列に従って標準化されていないようです。
<更新>どうやら、これはForthの些細な問題ではありません。不足している文字列機能を実装するライブラリがWeb上にあります:FFL(str module)およびBerndPaysanによる文字列関数。これは良い出発点ですが、そこから文字列の配列に移動するにはまだ作業が必要です。</更新>
では、特定の配列から文字列を返す単語をどのように実装できますか?