我们知道数学有符号和数字计算。但为什么 Lisp 作为一种通用编程语言更紧密地连接到符号计算?
Lisp 的哪些部分可以解决符号问题?
答案 0 :(得分:9)
当时,符号是Lisp中的第一类对象,而在其他语言中则更少。大多数其他语言都专注于数字计算(1 + 2 + SIN(PI / 2))。
在Lisp中,Symbol是一种特定的语言工件(与字符串不同),它使得使用非数字的东西非常容易。由于这些是系统中的第一类对象,因此Lisp提供了“免费”解析器,读者和此类对象的编写器。
'(A + B / 2)在现成的Lisp中表现微不足道。
表达的简易性增加了阅读和编写符号计算应用程序这些方面的负担,使得更容易关注核心问题(方程式减少,问题求解器,定理证明等)。
今天,即便如此,很少有语言拥有符号的一流概念。但是有足够的公用事业,并且今天它们不像今天那样重要,因为它是基本的Lisp vs Fortan vs Pascal这样的工作。
答案 1 :(得分:0)
通常与Lisp相关的术语符号计算令千禧一代感到困惑,这些千禧一代是在计算机用于人类和社会生活的所有领域的时代长大的。早在Lisp出现的那一天,计算机价格昂贵,而且它们的使用主要用于科学/会计环境。数字运算。将已知算法从数学翻译成程序。现有语言难以优雅地解决问题的一个领域是具有多项式表达式的代数公式。 Lisp提供了一流的结构,使计算机代数系统的设计与传统的数学推理无缝映射,因此这个术语。符号计算在今天仍然很重要,特别是在逻辑编程,约束求解,人工智能等领域。