使用 IronScheme 进入 Scheme 编程语言的世界
用 Scheme 程序说声:hello world。先打开你的编辑器,创建一个称为 hello.ss 的文件,然后将下面的文本内容保存进去:
;hello.ss (import (rnrs)) (begin ;显示 hello 文字 (display "hello world.") (newline) )
第1行是注释。Scheme 会把分号(;)及在这行它后面的文本内容忽略掉。
begin 是 Scheme 传输进入从属语句段(subform)序列的一种方式。在上面的示例中有2个从属语句段。第1段 display 处理函数的调用:将它的实参(字符串"hello world.")输出到控制台(或者“标准输出”)。第2段是 newline 处理函数的调用:输出了一个回车。
想要运行该程序的话,打开 IronScheme 控制台,在命令行中输入:
(load "E:\\work\\hello.ss")
Scheme 会执行 hello.ss 中的内容,输出 hello world.
再后跟一个回车。
在《高阶函数:用作参数、函数生成的函数和匿名函数》中,用匿名函数计算给定数字的平方:
;square.ss (import (rnrs)) ;定义 square 函数 (define square ;匿名函数 (lambda (x) (* x x) ) ) ;调用 square 函数,然后显示 (display (square 3)) (newline) (display (square 4)) (newline)
执行 square.ss 内容的结果如图:
在 abruzzi 的《FP》分享中,用apply处理函数对list的参数进行了累加:
;list.ss (import (rnrs)) (define (sum argList) (apply + argList) ) (define p '(1 2 3 4 5 6)) (display (sum p)) (newline)
在上面的代码中请注意:用单引号来指定list,也可以写成:
(list 1 2 3 4 5 6)
参考:
Teach Yourself Scheme in Fixnum Days(译)
(完)