Scheme
First Post:
Last Update:
Word Count:
Read Time:
Last Update:
Word Count:
280
Read Time:
1 min
Scheme 笔记
Scheme 是一个语法非常精简的函数式语言,作为lisp 语言的一份子同样也有着总多的实现。
我在学习Scheme的时候主要使用的是Chez Scheme.文档可以参考,
这个实现已经开源在github上了.
Scheme 的语法非常简洁,由S表达式构成,通常是(A B C)这样的形式。部分常用的数据结构存在字面量。可以使用宏定义自己的语法结构。
关键字主要是 define lambda:
- 用来将值与变量绑定的define.
(define a 12)
(define a (+ 12 12))
2. 用来编写lambda 表达式的lambda.
(lambda (x) (+ x x))
(define b (lambda (x) (+ x x)))
(b 12)
3. let
4. 在scheme中函数的命名存在模式,!后缀意味着该函数可能
会改变状态,?意味着该函数会返回一个布尔值.
数据类型.
- 数字,不区分浮点与整形.
- 字符串.
- 布尔类型.字面量 #f 为false,#t 为true.
- 符号类型,以“ ‘ ”开头,scheme 不会对 ‘ 后面的符号求值.
(define w ‘(a b c d)) - record类型.
- port类型,用于IO.
打赏
支付宝 | Alipay


微信 | WeChat

