私のコースの1つは、SICPの一部のセクションでDrRacketを使用しています。私たちはメタサーキュラーエバリュエーターに取り組んでおり、作業で使用する必要のあるR5RSコードファイル(set-car!
およびset-cdr!
)があります。R5RSファイルは約500行なので、別のバッファーに保存することをお勧めします。どうすればそれを回答バッファの定義に含めることができますか?がracket/include
必要なよう#lang racket
ですが、その言語ではありませんset-car!
。set-cdr!
1730 次
1 に答える
10
次のことができます。
モジュールを#lang r5rsに記述し、 lang 行の後に次を追加します。
(#%provide (all-defined))
#lang r5rsにも回答バッファを用意し、 #%requireを使用してその定義を取り込みます。
(#%require "some-module.ss")
たとえば、次の内容のf1.ssがあるとします。
#lang r5rs
(#%provide (all-defined))
(define (f x)
(* x x))
および次の内容のf2.ss :
#lang r5rs
(#%require "f1.ss")
(display (f 3))
(display (f 4))
次にf2.ssを実行すると、916 を表示する際に適切な処理が行われ、その Interactions バッファーはf1.ssに記述されたすべての定義を認識します。
これは、ドキュメントに記載されているものをインポートする Racket 固有の低レベル モジュールを使用します。幸運を!
于 2011-11-28T04:07:21.670 に答える