
编程语言
文章平均质量分 71
cyendra
Azarath Metrion Zinthos
展开
-
如何优雅的解释什么是闭包
首先看一段python代码def fun(): n = [] def res(x): n.append(x) return n return resf = fun()print f(2)print f(3)原创 2014-07-09 17:01:38 · 594 阅读 · 0 评论 -
如何优雅的入门LISP(一)
*其实我不会LISP,以下内容都是我瞎编的*原创 2014-07-12 14:01:01 · 1025 阅读 · 0 评论 -
我终于理解了LISP『代码即数据|数据即代码』的含义
以前我一直不能理解LISP里引用的作用,感觉引用和字符串没什么区别。比如:> (define (func) 'ok)> (func)'ok这里把引用ok当做了函数func的返回值。但是我在实现函数式汉语编程的时候,我把代码构造成了一个多叉的语法树,这时候对某一段代码的引用,就是不对代码Eval,直接返回语法树的根节点。类似于: > '(car原创 2014-11-07 22:35:19 · 2813 阅读 · 0 评论 -
RavenScheme简介
RavenScheme简介RavenScheme使用了一个运行『读入-求值-打印』循环的解释器。该解释器从标准输入反复的读入表达式,对得到的表达式求值,然后打印出结果。如果用户键入:【加 1 2】解释器将打印出3如果用户键入3解释器会打印出3 RavenScheme提供一个加载函数,它可以从文件读入并行求值:【加载 『我的程序原创 2014-11-23 17:04:48 · 747 阅读 · 0 评论 -
《SICP》中的一些练习题
1.16(define (square n) (* n n))(define (fast-expt b n) (cond ((= n 0) 1) ((even? n) (square (fast-expt b (/ n 2)))) (else (* b (fast-expt b (- n 1))))))(define (my-expt b n) (defi原创 2015-06-09 16:14:48 · 1149 阅读 · 0 评论