Common Lisp
文章平均质量分 78
CC-xx
这个作者很懒,什么都没留下…
展开
-
Emacs + GNU CLisp + SLIME搭建common lisp开发环境
一、EmacsEmacs的主页:http://www.gnu.org/software/emacs/Emacs的下载:http://mirrors.ispros.com.bd/gnu/emacs/,如果需要windows版本的,可到windows目录中下载。然后将现在后的文件解压到某目录下即可,如解压到D:\二、GNU CLispGNU CLisp的主页:http://ww原创 2013-07-08 20:57:57 · 2504 阅读 · 0 评论 -
Common Lisp语法——函数定义
Common Lisp通过DEFUN宏来定义新的函数(defun name (parameter*) "optional documentation string." body-form*)这里函数的名字几乎可以是任意的符号/字符组合,一般是小写字母和连字符。如:(defun hello-world () (format t "hello, world~%"))可选参数(opt原创 2013-07-10 20:38:15 · 1518 阅读 · 1 评论 -
Common Lisp语法——变量
变量基础在Common Lisp中,变量是无类型的。变量在内部表达中会有关联的类型信息,可用于运行时的动态检查。在Common Lisp中所有的值都存放在对象中(至少从概念上是这样),因此,对一个变量赋一个新的值,将不会影响到它先前所存储的值。但是,如果一个变量持有一个可变对象的引用,则可以通过这个引用来修改这个可变对象。如:(defun foo (x y) (+ x y))一旦函原创 2013-07-11 21:42:07 · 1666 阅读 · 0 评论 -
Common Lisp语法——标准控制宏
WHEN和UNLESS先来了解下IF表达式:(if condition then-form [else-form])其行为就是:当condition为non-NIL时则运行then-form并返回其值,否则运行else-form并返回其值。(if (> 2 3) "yes" "no") -> "no"(if (> 2 3) "yes") -> NIL(if原创 2013-07-12 11:36:34 · 1291 阅读 · 0 评论 -
Common Lisp语法——数字,字符与字符串
数字(Numberic)Common Lisp支持的数字类型有:整数、浮点数和复数。Common Lisp会把输入的数字表示形式化成其最简的表示形式。比如:123 -> 123+123 -> 123-123 -> -123123. -> 1232/3 -> 2/3 分数形式-2/3原创 2013-07-15 10:26:34 · 4640 阅读 · 0 评论 -
Common Lisp语法——自定义宏
自定义宏的语法为:(defmacro name (parameter*) "Optional documentation string." body-form*)比如:(defmacro double (x) (setf x (+ x x))原创 2013-07-15 14:19:20 · 969 阅读 · 0 评论 -
Common Lisp的标准容器
VectorsVectors是Common Lisp中基于整数索引的基础容器。它们分两类:一类是固定大小的vector,一类是可变大小的vector。可使用函数VECTOR定义固定大小的Vector:(vector) -> #()(vector 1) -> #(1)(vector 1 2) -> #(1 2)#(...)用于保存将要被PRINTing或原创 2013-07-16 11:32:03 · 1042 阅读 · 0 评论 -
Common Lisp——List
要理解List关键在于理解构建它的更原始的数据类型,即cons cell。可以通过函数CONS创建它们。CONS函数需要两个参数,并返回一个新的包含这两个参数的cons cell。CONS的参数可以引用任何类型的数据对象。除第二个参数为NIL或其他cons cell的情况,CONS返回的新的cons cell中的两个值被一个点号所隔开,这样的cons cell被叫做dotted pair。原创 2013-07-22 11:24:28 · 1879 阅读 · 0 评论