7

Currency の SICP セクション 3.4 (スキームのシリアライザー) には、記述されているが MIT スキームでは実装されていない、並列実行と呼ばれる手順があります。誰かが実際に実装したのだろうか。そうでない場合、そのような手順の実装をどのように開始しますか?

http://mitpress.mit.edu/sicp/full-text/book/book-ZH-23.html#%_sec_3.4.1

4

4 に答える 4

7

parallel-executeこれは、Racket を使用して、SICP のセクション 3.4 の演習を解決するために実装した方法です。

(define (parallel-execute . procs)
  (map thread-wait
       (map (lambda (proc) (thread proc))
            procs)))

本で定義されている手順と同じセマンティクスを持つことは保証できませんがparallel-execute、演習問題を解決することはできました。

于 2012-11-20T13:47:06.263 に答える
6

この本の公式サイトでは、実装のparallel.scmを提供しています。次のように MIT スキームを開きます。

mit-scheme -load PATH/parallel.scm

またはこれを置く

(load "PATH/parallel.scm")

あなたのスキームソースファイルの先頭にあります。

于 2014-11-06T07:38:47.717 に答える
3

実際には、次のパッケージを使用して、必要なすべての実装をラケットにロードできます。これを定義ウィンドウまたは対話ウィンドウに入力するだけで、必要なパッケージがインストールされます。必要な場合は、定義ウィンドウに同じコメントを含めます。

(require (planet dyoo/sicp-concurrency:1:2/sicp-concurrency))

于 2016-05-29T17:21:49.513 に答える