利用 Racket 来解答 SICP 习题。
在运行代码前,请先进行相关的准备工作
在 x.rkt
文件中
#lang sicp
(#%require (only racket provide))
;; provide 公开 x-func
(provide x-func)
(define (x-func a b)
(....))
在 y.rkt
文件中
#lang sicp
(#%require "x.rkt")
;; 可使用 `x-func` 过程。
(x-func 1 2)
#lang sicp
;; 可以使用画图相关的函数
(#%require sicp-pict)
- 1.构造过程抽象
- 2.构造数据现象
- 2.1 数据抽象导引
- 2.2 层次性数据和闭包性质
- 练习 2.17
- 练习 2.18
- 练习 2.19
- 练习 2.20
- 练习 2.21
- 练习 2.22
- 练习 2.23
- 练习 2.24 和 说明
- 练习 2.25
- 练习 2.26
- 练习 2.27
- 练习 2.28
- 练习 2.29 a),b),c) 和 d)
- 练习 2.30
- 练习 2.31
- 练习 2.32
- 练习 2.33 ⭐
- 练习 2.34
- 练习 2.35
- 练习 2.36
- 练习 2.37 ⭐
- 练习 2.38
- 练习 2.39 ⭐
- prime sum pairs
- 全排列
- 练习 2.40
- 练习 2.41
- 练习 2.42 ⭐
- 练习 2.43
- 练习 2.44
- 练习 2.45
- 练习 2.46
- 练习 2.47 list 和cons
- 练习 2.48 还需改进
- 练习 2.49 还需改进
- 练习 2.50 还需改进
- 练习 2.51 还需改进
- 练习 2.52 还需改进
- 2.3 符号数据
- 3.模块化、对象和状态
- 4.元语言抽象
- 5.寄存器机器里的计算