Forth

Forth

上級

説明

Forthのごく単純なサブセットを評価する評価機を実装します。

Forthはスタックベースのプログラミング言語です。 Forthの小さなサブセットを評価する、ごく基本的な評価機を実装しましょう。

評価機は次のワードに対応する必要があります。

  • +、-、*、/(整数演算)
  • DUP、DROP、SWAP、OVER(スタック操作)

また、慣習的な構文 : word-name definition ; を使って新しいワードを定義する機能にも対応する必要があります。

話を簡単にするため、対応が必要なデータ型は16ビット以上の符号付き整数だけです。

構文には次のルールを使います。数値は1つ以上の(ASCII)数字の並びで、ワードは数値ではない1つ以上の英字、数字、記号、句読点の並びです。 (Forthはおそらくもう少し違うルールを使っていますが、これで十分近いはずです。)

ワードは大文字と小文字を区別しません。

効率的なメモリ割り当て

tests/alloc-attack.rsにある追加のテストケースに注目してください。このテストは、アルゴリズム的に非効率な実装を検査します。そのため、オンラインで実行すると、そのまま失敗するのではなく、たいていタイムアウトになり、あまり役に立たないエラーメッセージが表示されます。

GitHubで編集する リンクは新しいウィンドウまたはタブで開きます
Rust Exercism

Forthを始める準備はできましたか?

Exercismに登録すれば、99個の演習、そして本物の人間によるメンタリングとともに、Rustを学んでマスターできます。すべて無料です。