5

言語に何が含まれているかは誰でも知っていracket/baseます。名前空間の定義を R7RS ドラフトと比較して、racket/baseRacket が Scheme とどのように異なるかを直接把握しようとしています。

4

2 に答える 2

10

他の実用的なScheme実装と同様に、違いは非常に大きくなります。大まかに言うと、 から 1300 を超える識別子が表示されracket/baseracket2000 を超えることもあります。また、名前の比較がすべてではないことに注意してください。Racket が使用するという事実のように、追加の違いがあります。デフォルトでは不変のペアであり、左から右への評価順序が保証されるという事実が好きです。

前者のリストを自分で取得する簡単な方法は、XREPLがインストールされていることを確認し (~/.racketrcファイルに が含まれていること)、 REPL 言語として(require xrepl)Racket を起動し、引数なしで (apropos) コマンドを使用して、バインドされたすべての名前:racket/base,ap

$ racket -I racket/base
Welcome to Racket v5.2.1.
-> ,ap

名前について読むには、,docコマンドを使用するか、ドキュメントの検索ボックスを使用します。

于 2012-07-12T19:21:03.030 に答える
1

The Racket Referenceによると:

特に明記しない限り、このマニュアルで定義されているバインディングは、ラケット/ベースおよびラケット言語によってエクスポートされます。

残念ながら、それは大規模なリファレンス マニュアルであるため、あまり役に立ちません。ただし、R7RS と Racket を比較しているので、リファレンス全体を参照して、何が利用できるかを把握することが役立つ場合があります。

于 2012-07-12T19:13:12.173 に答える