我正在通過SICP工作,同時使用Ableson/Sussman 講座和伯克利61A講座,這些講座遠遠超過了我的 速度。我想做一些伯克利家庭作業,但需要定義句子,但第一個,最後一個等等。看起來似乎曾經有一種簡單的方案語言嵌入到Dr. Scheme中,但是最近的版本4.1.5並沒有它。從Planet PLT 我想我可以在我的定義窗口中簡單地添加(require(planet「simply-scheme.ss」(「dyoo」 「簡單方案」1 0))))。我得到求博士方案的簡單方案成語
require: PLaneT
could not find the requested package: Server had no matching package:
No package matched the specified criteria
我試圖從here 抓住simply.scm文件,並粘貼到我計劃博士定義窗口,但它不工作:
在高級模式下的學生,我得到 讀:非法使用「。」在下面的代碼
對於線(拉姆達(字符串參數)
(define whoops
(let ((string? string?)
(string-append string-append)
(error error)
(cons cons)
(map map)
(apply apply))
(define (error-printform x)
(if (string? x)
(string-append "\"" x "\"")
x))
(lambda (string . args)
(apply error (cons string (map error-printform args))))))
在R5RS我得到 集!:在不能突變模塊要求的標識符:。號 - >串 (第7行下面的代碼)
(if (char=? #\+ (string-ref (number->string 1.0) 0))
(let ((old-ns number->string)
(char=? char=?)
(string-ref string-ref)
(substring substring)
(string-length string-length))
(set! number->string
(lambda args
(let ((result (apply old-ns args)))
(if (char=? #\+ (string-ref result 0))
(substring result 1 (string-length result))
result)))))
'no-problem)
謝謝Brian。你是男人! – Leonard 2009-04-11 13:55:54