scheme - 油漆雇用 : unbound identifier in: paint-hires

标签 scheme racket sicp

我试图按照Which lang packet is proper for SICP in Dr.Racket?中的方案和sicp进行操作

但是当我在接受的答案中运行代码时

#lang sicp

(paint-highres  (below (beside diagonal-shading
                         (rotate90 diagonal-shading))
                 (beside (rotate270 diagonal-shading)
                         (rotate180 diagonal-shading))))

我收到错误

 paint-hires: unbound identifier in: paint-hires

Dr.Racket running scheme - paint error

我已经安装了 sicp 软件包。 有谁知道问题出在哪里吗?

最佳答案

paint-hires 函数是原始 MIT 方案实现的遗留形式。当时,在进行实验时,“高分辨率”太慢而无法使用 - 因此使用 paint-hires 来获得“最终”图像。

当 SICP 图片语言的原始 MIT 方案实现移植到 PLT 方案时,paint-hires 被保留。

最近(在一两年内)SICP 图片语言在现代 Racket 上重新实现。这使您能够使用具有您选择的分辨率和颜色的图片语言! (最初的 MIT 方案用于单色显示器)等等。

复制“main.rkt”和 einstein2.jpg”并将它们保存在同一文件夹中。

在 DrRacket 中打开“main.rkt”并运行它。

请查看底部的示例。

在“main.rkt”底部添加您自己的程序。

查看文件以了解如何使用颜色等。

两个文件都在这里: https://github.com/sicp-lang/sicp/tree/master/sicp-pict

关于scheme - 油漆雇用 : unbound identifier in: paint-hires,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54175013/

相关文章:

latex - Scribble:如何使表格居中?

lambda - 使用 lambdas 帮助理解 cons 和 car 在方案中的这种实现

lisp - 关于 Racket 剩余预期参数

scheme - MIT 方案中的分类器和变压器是什么?

c++ - Lisp 作为 C++ 应用程序中的脚本语言

scheme - 生成百万随机元素列表

racket - 如何制作 Racket #lang 的修改版本? (添加/删除一些定义)

variables - 创建本地绑定(bind)的 'let' 或 'letrec' 和 'define' 之间有什么区别?

小块的 Lisp。第1章

scheme - (caadr exp) 在赋值变量中