![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Lisp
文章平均质量分 50
lishichengyan
zju过气涂鸦爱好者
展开
-
The Little Schemer读书笔记1
到第32页(第四版 电子工业出版社)1、书中定义的函数1)检查是否为原子:(define atom? ( lambda(x) (and (not (pair? x)) (not (null? x)))))2)检查列表元素是否全部为原子:(define lat? (lambda(l) (cond ((null? l)#t)原创 2017-09-13 16:11:13 · 484 阅读 · 0 评论 -
为什么Lisp适合处理递归?
我是在看了The Little Schemer的一部分章节以后产生的感想。在开始讨论之前有必要弄清楚几个概念:1)循环(loop)2)迭代(iteration)3)递归(recursion)4)遍历(traversal)一般来说,只要一个步骤被重复做了,那么这个过程就构成一个循环(loop),所以,迭代和递归都可以算作是循环。那么什么是迭代呢?在数学上,迭代指的是在一个循环原创 2017-09-14 10:53:34 · 1139 阅读 · 0 评论 -
Lisp发展史(简要)
最近打算看SICP,虽然貌似从2008年开始MIT就放弃使用这本书了(入门语言也从Lisp改成了python=。=)纯粹是好奇吧。。。Lisp方言众多,一个简要的发展史示意图:写完了。。。原创 2017-09-08 17:07:04 · 765 阅读 · 0 评论 -
Racket入门
Racket是众多Lisp方言中的一种,语法简洁优雅(可以说,对语法的“蔑视”是Lisp系语言的一大特点,也正因为这个原因,学习它们可以让我们更关注计算的本质,而非语法上的细枝末节)。国内关于Racket语言的教程不多,本篇文章仅作为入门用途,如果您想继续深入学习,不妨访问:http://racket.tchen.me/。(1)下载DrRacket在plt-scheme官网(plt-scheme现...原创 2017-09-08 19:24:13 · 14152 阅读 · 0 评论 -
SICP读书笔记:牛顿法求平方根
这个例子向我们展示了一个过程是怎么一步步被抽象和构建的,代码如下:#lang racket;; get the square of x(define (square x)(* x x));; get the absolute value of x(define (abs x)(if(< x 0)(- x)x));; calculate the square root of x...原创 2018-03-03 20:18:44 · 384 阅读 · 0 评论