老古董Lisp实用主义入门教程
文章平均质量分 94
抛弃Lisp纯粹和美的幻想,对准日常的使用来介绍Lisp,是一个实用主义的入门教程。
大福是小强
随机更,请访问:https://www.windtunnel.cn/
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
老古董Lisp实用主义入门教程(13): 恶作剧先生的黑客帝国特效
恶作剧先生只有在进行恶作剧的时候才会动脑筋,他可真是个傻瓜啊……原创 2024-11-18 16:15:34 · 1128 阅读 · 0 评论 -
老古董Lisp实用主义入门教程(12):白日梦先生的白日梦
白日梦先生想要编一个排名第一的Lisp库!原创 2024-09-28 23:06:45 · 1159 阅读 · 0 评论 -
老古董Lisp实用主义入门教程(11):没人先生的函数笔记
函数是一种对象,可以返回任何数量以及任何类型的Lisp对象, 包括函数对象;函数的返回值推荐使用values来构造,此时直接调用返回第一个值,可使用来绑定返回值,或者使用nth-value来获取返回值的第n个值;函数的参数定义方式有必须参数,可选参数,关键字参数,剩余参数,允许其他关键字参数;函数的产生方式有函数表达式,函数转换,函数编译;函数的调用方式有funcallapply;是谁学习了上面这些?没有人.原创 2024-09-19 23:34:58 · 1524 阅读 · 0 评论 -
老古董Lisp实用主义入门教程(10):聪明先生拒(ji)绝(xu)造轮子
聪明先生非常聪明, 他总是能认识到自己的错误: 造轮子, 造轮子, 造轮子;聪明先生学习编程序总是把原理和实践结合起来;要想不造轮子, 就要知道有些什么轮子;聪明先生一忍不住又造了若干个方形的轮子, 每次都是这样, 承认错误, 坚决不改!原创 2024-09-18 13:37:58 · 1057 阅读 · 0 评论 -
老古董Lisp实用主义入门教程(9): 小小先生学习Lisp表达式
Lisp中的一切都是值,一切都可以替换。Lisp中的表达式是值,值是表达式。一致性和对称性是Lisp的特点。原创 2024-09-15 01:00:36 · 1597 阅读 · 0 评论 -
老古董Lisp实用主义入门教程(8):挠痒痒先生建网站记
Hunchentoot的结构很简单, 有一个对象ACCEPTOR, 用于接受请求.same time.;太长不列...这个类的基本结构如上所示, 主要的slot有portaddressnametaskmaster, 等等.两个主要的子类是和+port+address+name这里的例子, 就主要需要用到port这两个slot:port 8080这个服务器,已经可以运行, 并且把当前目录作为, 也就是说, 服务器会把当前目录下的文件作为静态文件提供.原创 2024-09-07 23:13:34 · 1773 阅读 · 0 评论 -
老古董Lisp实用主义入门教程(7):挑剔先生给出终止迭代的条件
挑剔先生,就是一个非常挑剔的人,他对于递归的终止条件,有着非常严格的要求。他认为,递归的终止条件,必须是一个确定的条件,而且这个条件必须是可以被计算的。其实从上面的图可以看到,这个图它是一个特殊的图,称为树。粗鲁先生,懒惰先生,颠倒先生,完美先生,好奇先生,挠痒痒先生大失所望,又无法理解。数学归纳法的起始条件和递归迭代终止条件,都指向了一个特殊的数值,而递归定义数据结构,也自然的指向了一个特殊的数据结构。那么对于自然数,这个数字是1,对于整数,这个数字是0,对于列表,这个数据结构是空列表。原创 2024-08-27 14:08:29 · 962 阅读 · 0 评论 -
老古董Lisp实用主义入门教程(6):好奇先生在Lisp的花园里挖呀挖呀挖
这就是Lisp最为独特的地方,Lisp的运行环境(REPL)中的符号都是动态的,可以被修改,可以被重新定义,可以被删除。这里有一个Lisp的核心概念,一个运行的环境中所有的符号、绑定都可以很容易的存成一个文件,然后在另一个环境中重新加载,这就是Lisp的强大之处。可以看到这个函数的签名,以及参数列表,返回值的类型,文档描述,函数的源代码文件位置。文档字符串内的搜索是可选的。好奇先生还没来得及按下回车,挠痒痒先生的手从很远的地方伸过来,挠了一下好奇先生的咯吱窝,然后还按了一下键盘,好奇先生的命令就被执行了。原创 2024-08-27 08:44:42 · 1174 阅读 · 0 评论 -
老古董Lisp实用主义入门教程(5):好奇先生用Lisp探索Lisp
包是Lisp中的一个重要概念,它可以帮助我们组织符号。一个包可以包含很多符号,我们可以通过来遍历一个包中的所有符号。一个符号可以有文档字符串,我们可以通过describe来查看一个符号的文档字符串。对于Lisp的学习,应该尽快建立REPL工具,然后用Lisp来探索Lisp。原创 2024-08-22 11:08:29 · 1216 阅读 · 0 评论 -
老古董Lisp实用主义入门教程(4):完美先生的完美Lisp
Lisp是一个符号编程语言,符号是Lisp中的对象的代号,符号是Lisp中的变量名、函数名、宏名等等。Lisp的开发过程因为其REPL而高效,可以实时的查看代码的运行结果,可以实时的修改代码,这个功能在Vs Code+Alive中支持的很好,在Emacs中也有很好的支持。直接操作代码,生成代码,求值代码,是Lisp中一个核心理念和功能,在宏中有很好的体现(以后再写)。原创 2024-08-16 08:35:14 · 1239 阅读 · 0 评论 -
老古董Lisp实用主义入门教程(3):调包侠颠倒先生与数学表达式
调包是专业程序员和业余程序员重要的工作方式,也是程序员的重要技能。调用包内的函数,在之后,可以使用全称前缀方式访问,也可以使用in-packageuseimport等方式把符号引入到当前包内。Lisp的包中的函数,可以通过apropos和来查看。可以通过describe来查看函数的帮助。原创 2024-08-07 09:23:09 · 829 阅读 · 0 评论 -
老古董Lisp实用主义入门教程(1):粗鲁先生Lisp再出发
Common Lisp其实挺好用的。使用SBCL作为Common Lisp的实现使用VSCode作为编辑器使用quicklisp作为软件包管理工具使用alive-lsp作为LSP的实现,配合alive插件SBCL可以直接产生可执行文件,无依赖,单文件。原创 2024-07-18 17:50:18 · 1807 阅读 · 0 评论 -
老古董Lisp实用主义入门教程(2):懒惰先生的Lisp开发流程
一个软件工程的管理工具,处理依赖关系,构建,测试,发布,现代的软件开发还可能包含了编译工具链的管理;一个记录软件包(生态)的registry,通常提供访问和下载依赖包的功能;实际存储软件包的地方,有些软件是直接从源代码构建的,有些是提供预编译的二进制包,还有一些是混合的。对于Java,Maven是一个很好的例子,它提供了一个标准的项目结构,一个中央的registry,以及一个标准的构建工具,Gradle也是一个类似的工具。原创 2024-08-03 00:05:11 · 899 阅读 · 0 评论
分享