跳转到内容

Lisp 编程/入门

来自维基教科书,开放的书籍,为开放的世界

Lisp 是继 Fortran 之后,至今仍在使用的最古老的编程语言。它是一种函数式、命令式、动态强类型语言,但与现存的几乎所有其他语言都截然不同。它可以编译或解释执行,好的编译器可以生成运行速度几乎与 C 一样的代码。 "Lisp" 这个名字是 List Processing 的缩写,但在 Paul Graham 的话中,Lisp 与列表处理的关系,就像 polo 衫与马球的关系一样。

Lisp 已成为 人工智能 系统的语言,这确实也是它的最初目的。然而,它已被证明是一种非常通用的语言,用于各种各样的应用程序,包括 web 应用程序、CAD 软件和 Emacs 文本编辑器。

Lisp 代码乍一看很奇怪,主要是因为它的 前缀表示法。在 中缀表示法 中,表达式用两个操作数之间的每个二元运算符来写

2 + 3 + 4 + 5

在前缀表示法中,运算符可以取任意数量的操作数,而不仅仅是两个。运算符位于最前面,后面跟着操作数

(+ 2 3 4 5)

括号始终是必需的,因为它们显示了函数参数的开始和结束位置。这种形式的表达式被称为 s 表达式

Lisp 中的函数调用也采用 s 表达式的形式:括号中的第一个标记指定函数,括号中的其余标记和表达式是参数。例如,一个 Lisp Hello, World 程序可以这样写

(print "Hello, World")

(在某些 Lisp 方言中,用于打印到标准输出的函数被称为 print 以外的其他名称。)

华夏公益教科书