Lisp 语 言 入 门 Lisp 是 一 门 历 史 悠 久 的 语 言 , 全 名 叫 LISt Processor, 也 就 是 “ 表 处 理 语 言 ” , 它 是 由 John McCarthy 于 1958 年 就 开 始 设 计 的 一 门 语 言 。 和 Lisp 同 时 期 甚 至 更 晚 出 现 的 许 多 语 言 如 Algo 等 如 今 大多 已 经 消 亡 , 又 或 者 仅 仅 在 一 些 特 定 的 场 合 有 一 些 微 不 足 道 的 用 途 , 到 现 在 还 广 为 人 知 的 恐 怕 只 剩 下 了Fortran 和 COBOL。 但 唯 独 Lisp, 不 但 没 有 随 着 时 间 而 衰 退 , 反 倒 是 一 次 又 一 次 的 焕 发 出 了 青 春 , 从Lisp 分 支 出 来 的 Scheme、 ML 等 语 言 在 很 多 场 合 的 火 爆 程 度 甚 至 超 过 了 许 多 老 牌 明 星 。 那 么 这 颗 常 青 树永 葆 青 春 的 奥 秘 究 竟 在 哪 里 呢 ?如 果你只 接触过 C/C++、 Pascal 这 些 “ 过 程 式语 言 ” 的 话 , Lisp 可 能 会 让 你觉 得 十 分 不 同 寻 常 , 首 先 吸引 你眼 球 ( 或 者 说 让 你觉 得 混 乱 的 ) 一 定 是 Lisp 程 序 中 异 常 多 的 括 号 , 当 然 从 现 在 的 角 度 来 讲 , 这 种 设 计的 确 对 程 序 员 不 大 友 好 , 不 过 考 虑 到 五 六 十 年 代 的 计 算 机 处 理 能 力, 简化语 言 本身的 设 计 在 那 时 算 得 上是 当务之急了 。Lisp 的 基本语 法很 简单, 它 甚 至 没 有 保留字( 有 些 语 言 学家可 能 对 这 一 点有 异 议, 别怕 , 我听你们的 ) , 它只 有 两种 基本的 数据, 仅 有 一 种 基本的 语 法结构就 是 表 达式, 而 这 些 表 达式同 时 也 就 是 程 序 结构, 但 是 正如规则最简单的 围棋却有 着 最为 复杂的 变化一 样, Lisp 使用 最基本的 语 言 结构定 义却可 以完成其它 语 言 难于 实现 的 、 最复杂的 功能 。废话 少说 , 现 在 我们就 来 看看 Lisp 语 言 中 的 基本元素。Lisp 的 表 达式是 一 个原子(atom)或 表 (list), 原子(atom)是...