Я прорабатываю SICP, используя Ableson / Sussman
лекции и лекции Беркли 61А, которые являются гораздо более моим
скорость. Я хотел бы сделать домашнюю работу в Беркли, но мне нужна
определения для предложения, но первое, но последнее и так далее. Похоже, когда-то в Dr. Scheme был встроен простой язык схем, но в самой последней версии 4.1.5 его нет. От Планета PLT
Я думал, что я мог бы просто добавить (требовать (планета "simply-схема.
"просто-схема" 1 0))) в моем окне определения. Я получаю
require: PLaneT
could not find the requested package: Server had no matching package:
No package matched the specified criteria
Я попытался получить файл simply.scm из здесь
и вставил его в окно определения моего доктора Схемы, но оно не работает:
В режиме Advanced Student я получаю
читайте: незаконное использование "."
Для строки (лямбда (строка. Args) в следующем коде.
(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 я получаю
set !: не может изменить идентификатор модуля в строке: number-> string
(строка 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)