`

深入理解Lisp的本质

阅读更多
最初在web的某些角落偶然看到有人赞美Lisp时, 我那时已经是一个颇有经验的程序员。在我的履历上, 掌握的语言范围相当广泛, 象C++, Java, C#主流语言等等都不在话下,我觉得我差不多知道所有的有关编程语言的事情。对待编程语言的问题上, 我觉得自己不太会遇到什么大问题。其实我大错特错了。

我试着学了一下Lisp, 结果马上就撞了墙。我被那些范例代码吓坏了。我想很多初次接触Lisp语言的人, 一定也有过类似的感受。Lisp的语法太次了。一个语言的发明人, 居然不肯用心弄出一套漂亮的语法, 那谁还会愿意学它。反正, 我是确确实实被那些难看的无数的括号搞蒙了。
回过神来之后, 我和Lisp社区的那伙人交谈, 诉说我的沮丧心情。结果, 立马就有一大套理论砸过来, 这套理论在Lisp社区处处可见, 几成惯例。比如说: Lisp的括号只是表面现象; Lisp的代码和数据的表达方式没有差别, 而且比XML语法高明许多, 所以有无穷的好处; Lisp有强大无比的元语言能力, 程序员可以写出自我维护的代码; Lisp可以创造出针对特定应用的语言子集; Lisp的运行时和编译时没有明确的分界; 等等, 等等, 等等。这么长的赞美词虽然看起来相当动人, 不过对我毫无意义。没人能给我演示这些东西是如何应用的, 因为这些东西一般来说只有在大型系统才会用到。我争辩说, 这些东西传统语言一样办得到。在和别人争论了数个小时之后, 我最终还是放弃了学Lisp的念头。为什么要花费几个月的时间学习语法这么难看的语言呢? 这种语言的概念这么晦涩, 又没什么好懂的例子。也许这语言不是该我这样的人学的。

几个月来, 我承受着这些Lisp辩护士对我心灵的重压。我一度陷入了困惑。我认识一些绝顶聪明的人, 我对他们相当尊敬, 我看到他们对Lisp的赞美达到了宗教般的高度。这就是说, Lisp中一定有某种神秘的东西存在, 我不能忍受自己对此的无知, 好奇心和求知欲最终不可遏制。我于是咬紧牙关埋头学习Lisp, 经过几个月的时间费劲心力的练习, 终于,我看到了那无穷无尽的泉水的源头。在经过脱胎换骨的磨练之后, 在经过七重地狱的煎熬之后, 终于, 我明白了。

深入理解Lisp的本质

分享到:
评论

相关推荐

    《Lisp的本质》PDF

    了解Lisp的本质,可以帮助我们更深入地理解计算机科学的原理,甚至改变我们对编程的认知。 首先,Lisp的语法是其最显著的特征之一。它以括号的使用而闻名,这初看起来可能会让习惯了其他语言的人感到困惑。Lisp的...

    明经通道源码共享(lisp)

    总的来说,【明经通道源码共享(lisp)】是一个宝贵的资源,对于想要深入理解Lisp编程语言、函数式编程思想以及探索人工智能等领域的人来说,这是一个不可多得的学习材料。通过仔细研究其中的源码,你将能够深化对Lisp...

    lisp解密程序-适用于早期的Lisp程序

    Lisp是一种古老而强大的编程语言,它以其独特的语法和...总的来说,Lisp解密程序是一个技术含量高、需要对Lisp语言有深入理解的工具,它揭示了早期软件保护的策略和方法,同时也展示了编程语言在历史发展中扮演的角色。

    C++ 实现的 LISP 编译器

    将LISP编译器实现为C++项目是一个深入理解这两种语言及其交互的好方法。 首先,我们需要了解LISP语言的基本概念。LISP中的代码本质上是数据结构,主要由S-表达式(S-expressions)组成,这是一系列括号包围的元素,...

    ANSI Common Lisp(Pau Graham).pdf

    书中详细讲解了Lisp的哲学思想、数据结构、控制流、函数式编程、宏系统、类型系统、面向对象编程等方面的内容,并提供了大量示例代码和实践项目,帮助读者深入理解并掌握Common Lisp的精髓。 ### 适用人群 - **...

    lisp简明教程

    ### Lisp简明教程知识点概述 #### 一、Lisp语言的历史地位及特点 ...对于希望深入了解编程语言原理和设计原则的学习者来说,Lisp不仅是一门值得学习的语言,更是一扇通往计算机科学更深层次理解的大门。

    On_Lisp中文版.pdf

    《On_Lisp中文版》是关于Common Lisp高级编程技术的书籍,由Paul Graham编写。...这本书将帮助读者不仅仅掌握Lisp编程,而且深入理解其背后的哲学和技术原理,从而在编写可扩展程序方面达到新的高度。

    LISP语言(马希文).pdf

    此书详细介绍了LISP的基本语法和表达式的概念,强调了函数式程序设计的能力,以及形式化方法在描述LISP本质上的应用。书中也涵盖了LISP语言的核心部分,包括其作为函数型语言的特点和基本组成。 第1章是LISP语言...

    On Lisp中文Common Lisp高级编程技术

    《On Lisp中文Common Lisp高级编程技术》:深入理解Lisp宏与自底向上编程 《On Lisp中文Common Lisp高级编程技术》是一部深挖Lisp语言精髓的经典著作,由Paul Graham撰写,旨在引领Lisp程序员探索高级编程技术。...

    DPL - Lisp In nhanh_lisp_源码

    在Lisp中,代码本质上就是数据,这使得它非常适合进行元编程和自解释性程序设计。 Lisp的"Plot"通常指的是图形绘制功能,可能是用于创建图表、曲线或图形的库。在Lisp环境中,"Plot"库可能提供了接口来帮助程序员...

    lisp 学习笔记

    Lisp是一种古老而强大的编程语言,它以...通过深入学习Lisp,开发者不仅可以理解函数式编程的思想,还能获得对编程本质的深刻洞察。阅读和分析“lisp.txt”这个文件,将会带你进一步走进Lisp的世界,领略其魅力与力量。

    LISP表达式的抽象语法树

    LISP(LISt Processing)是一种历史悠久的编程语言,以其独特的语法和数据结构——S-表达式(S-expression)著称。在LISP中,程序本质上就是...对于学习和开发LISP系统的人来说,深入理解AST的概念和构建方法至关重要。

    SICP LISP AI

    本书的第二版包含了中文和英文两个版本,旨在帮助读者理解计算机程序的本质,以及如何通过Lisp和Scheme语言来构建和解释这些程序。 Lisp是一种古老而强大的编程语言,以其独特的括号语法和函数式编程特性而著名。它...

    Common lisp入门教程

    通过以上知识点的介绍,我们了解了 Common Lisp 中的一些基础知识,包括如何使用符号、Lisp 的注释方式以及 Lisp 的编程风格等。这些内容都是学习 Lisp 的重要起点,掌握了这些基本概念之后,就可以进一步深入学习 ...

    Lisp中文翻译学习资料.rar

    "ANSI Common Lisp 中文翻译版.pdf"是关于ANSI Common Lisp的中文教程,可以帮助读者深入理解Common Lisp的各个方面,包括基本语法、数据结构、控制结构、函数定义、宏系统、编译器接口、类型系统以及高级特性。...

    Tic_tac_toe.rar_it_lisp_lisp game

    通过分析和理解这两个LISP文件,我们可以深入学习LISP语言的基本结构,同时也能理解如何利用函数式编程的思维方式来解决实际问题。这对于提高编程能力,特别是对于理解复杂逻辑和数据结构的处理具有很大的帮助。

    Introduction to Lisp

    标题:Lisp语言入门 描述:本篇介绍Lisp语言的基础知识,适合对计算机语言有一定了解,希望快速学习新语言的读者。...对于有兴趣深入了解编程本质和计算机科学的读者而言,Lisp绝对值得投入时间去学习和探索。

    lisp语言编程成果集

    学习和使用LISP语言编程不仅可以提升编程技巧,还可以深入理解计算机科学的基础原理。通过这个成果集,无论是LISP初学者还是经验丰富的开发者,都能从中受益,发掘LISP的无限潜力,并将这些知识应用于实际的工程问题...

Global site tag (gtag.js) - Google Analytics