Common Lisp入门指南
需积分: 33 53 浏览量
更新于2024-07-23
收藏 416KB PDF 举报
"这是一份由Geoffrey J. Gordon编写的Lisp入门教程,主要针对Common Lisp,并提及在CMU环境中使用可能与其它环境存在细微差别。教程推荐了Guy L. Steele Jr.的《CommonLISP: the Language》作为学习Lisp的优秀资料。"
在Lisp编程语言中,符号(Symbols)扮演着核心角色。它们实际上是不可变的字符串,允许包含字母、数字和连接符,但必须以字母开头。例如,`a`, `b`, `c1`, `foo`, `bar`, 和 `baaz-quux-garply` 都是有效的Lisp符号。值得注意的是,如果输入仅包含数字或以数字开头且前导字符为连接符,Lisp会将其解析为数值而非符号。
在Lisp中,你可以通过`setq`来为符号赋值,例如 `(setq a 5)` 将符号`a`的值设置为5。然后,你可以通过简单的符号引用获取其值,如 `(a)` 将返回5。`let`表达式用于临时绑定符号的值,例如 `(let ((a 6)) a)` 在当前作用域内将`a`的值暂时设为6,当`let`块执行完毕后,`a`的值会恢复到之前的5。
函数调用是通过将符号作为参数传递实现的,比如 `(+ a 6)` 表示将`a`的值与6相加。如果尝试获取一个未定义的符号的值,Lisp会抛出错误,例如尝试获取没有值的`b`时,会得到“尝试获取未定义符号B的值”的错误。
在Lisp中,`t`和`nil`是两个特殊的符号,它们分别表示逻辑上的真和假。`t`的值始终是`t`,而`nil`的值始终是`nil`。这种表示方式在条件判断和其他逻辑操作中非常常见。
这份教程提供了Lisp初学者理解基本概念的入口,包括符号的使用、赋值、局部变量(通过`let`)以及逻辑值的表示。通过学习这些基础知识,开发者可以逐步掌握Lisp的语法和编程模式,为进一步探索Lisp的高级特性和在人工智能领域的应用打下基础。
2017-12-11 上传
2011-06-30 上传
2011-07-04 上传
2016-04-02 上传
2018-12-06 上传
点击了解资源详情
2010-05-03 上传
2010-10-05 上传
2014-10-15 上传
huanglizhuo
- 粉丝: 0
- 资源: 2
最新资源
- T5:简单易用的配置文件读取库-开源
- trello-bookmarklets
- pause-methode
- school_back:回到学校的服务器
- monad-[removed]JavaScript中的Monad
- Simple Way to Usenet:Usenet Report Engine受到了已终止的newzbin的极大启发-开源
- C++14语言特性和标准库-第一部
- RCON-Bot:连接到SourceDS服务器并在指定通道中镜像控制台的discord Bot
- CAJ文件阅读器安装包
- login-lecture:登录讲座
- register-login-api:注册和登录功能的相关中间件使用
- 基于ASP.NET超市管理系统毕业设计成品源码讲解
- 你好,世界
- 基于python+django+NLP的评论可视化系统
- 货币换算增强版-crx插件
- ybubby:我的GitHub个人资料的配置文件