問題タブ [befunge]

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.

0 投票する
2 に答える
1063 参照

befunge - Befunge-93でプログラムをコンパイルする方法は?

Befunge-93でプログラムを保存してコンパイルするにはどうすればよいですか?fileName.whatファイルを(のように)保存するために必要なファイル拡張子は何ですか?では、どうすればコンパイルできますか?

0 投票する
1 に答える
251 参照

esoteric-languages - 実行がプログラムの制限に達した場合、Befungeではどうなりますか?

この質問に対する答えが見つかりませんでした...「周期境界条件」はありますか?つまり、実行は反対側のサイトで続行されますか?それとも、実行がプログラムを離れることは違法ですか?

0 投票する
1 に答える
197 参照

esoteric-languages - Befunge 98: 標準入力からの eof

EOF が発生した場合、 befunge-98~の命令の予想される動作は何ですか?

直観的には、スタックに -1 を配置する必要がありますが、この点でいくつかのバリエーションを発見しました。

テストは次のとおりです。

次のように test.fg を使用します (3 つの文字を読み取り、それらのコードを出力します)。

EOF を正しく (つまり、LF とは異なる) 処理し、完全な befunge-98 仕様をサポートするインタープリターは実際にありますか?

0 投票する
1 に答える
148 参照

befunge - Befunge は複数の命令を繰り返します

Befunge-98 では、kオペレーターがこれを許可してくれます

この出力は になります2110複数の命令を繰り返す (短い) 方法を探して2121kます。121

オペレーターにこれをさせる方法はありますkか?そうでない場合、 、およびまたはnを使用せずに、シーケンス回を繰り返す最短の方法は何ですか?pg_|

0 投票する
1 に答える
107 参照

python - 文字列のリストを 2D 座標に展開

Python でBefungeインタープリターを作成しようとしていますが、現在の問題はpコマンドです。基本的に、ファイルの各行にある文字列のリストがあり、2D 座標系を使用して自分の位置を追跡します。外側のリストはyで、各文字列内の位置は ですx

問題は次のとおりです。pコマンドは座標と値をスタックからポップします。次に、その位置の値に対応する ASCII 文字を配置します。残念ながら、Python では、リストと文字列をインデックスで展開するのは非常に困難です。更新されたデータに合わせて、リストとその中の文字列を展開する最も効率的な方法が必要です。2 つの理由で、特定のサイズに事前に展開することはできません。理論的には無限のメモリ割り当て (チューリングの完全性のために必要) と、プログラムがその端を超えて展開されていない場合は、プログラムの端でラップ (事前に展開された削除)それを効率的に行う能力)。

TL;DR: リストとその中のすべての文字列を拡張して、特定の 2D 座標 (外側のリストは y、内側のリストは x、つまりprog[y][x]) に到達して含めるための最良/最も効率的な方法を見つける必要がありますが、できません。いくつかの複雑で説明が難しい理由により、事前に割り当てられています。

よくわからなかったようですが、このpコマンドは実行中の Befunge コードを直接変更します。したがって、プログラムは必要に応じてデータにアクセスして実行できる必要があるため、プログラム自体の外部にデータを保存することはできません (前述のとおり、Befunge は奇妙です)。

0 投票する
0 に答える
57 参照

python - Befunge-98 インタプリタの関数一覧をインポートする方法

私は非常に優れた Befunge インタープリターを見つけ、ファイルからフィンガープリントとそれに対応する関数の簡単なインポートを追加しようとしています。私の現在のコードでは、関数ごとにクラスを使用し、関数をフィンガープリントの下に割り当て、次に文字の下に割り当てます。これが元のコードと私の現在のコードの仕組みです。私は、fingerprint.py という名前のファイルをモジュールとしてインポートし、fingerprint.initiate() などを実行して、指紋を指紋辞書に追加したいと考えていました。それはインタープリターファイルにあり、コードを使用しようとしています:

指紋データを辞書に追加しようとしましたが、構文エラーがあると言って許可されません。クラスをインスタンス化する方法がわかりません。完全なコードはこちらです。どんな回答でも大歓迎です。次回のコードの公開であなたに言及したいと思います。ありがとう、良い一日を。