lisp-1

来源:互联网 发布:一代宗师经典台词 知乎 编辑:程序博客网 时间:2024/06/06 03:49

LispFortran语言之后第二古老的高级编程语言,
自成立之初已发生了很大变化,
和一些方言一直存在在它的历史.
今天,最广为人知的通用的是Lisp方言:
Common LispScheme.
Lisp由约翰·麦卡锡1958年发明,在麻省理工学院(MIT).
该参考将带您通过简单实用的方法,同时学习Lisp程序设计语言.

这里写图片描述

就是这个老家伙!

这里写图片描述

Lisp是一门历史悠久的语言,全名叫LISt Processor,也就是”表处理语言”,
它是由John McCarthy于1958年就开始设计的一门语言.
和Lisp同时期甚至更晚出现的许多语言如Algo等如今大 多已经消亡,
【Algo这个玩意居然百度都不知道?!】
又或者仅仅在一些特定的场合有一些微不足道的用途,
到现在还广为人知的恐怕只剩下了 FortranCOBOL.
但唯独Lisp,不但没有随着时间而衰退,反倒是一次又一次的焕发出了青春,
从Lisp分支出来的Scheme,ML【make love?!!!,machine language】等语言在很多场合的火爆程度甚至超过了许多老牌明星.
那么这颗常青树 永葆青春的奥秘究竟在哪里呢?

如果你只接触过C/C++,Pascal【帕斯卡】这些“过程式语言”的话,
Lisp可能会让你觉得十分不同寻常,
首先吸引你眼球(或者说让你觉得混乱的)一定是Lisp程序中异常多的括号,
当然从现在的角度来讲,
这种设计的确对程序员不大友好,
不过考虑到五六十年代的计算机处理能力,
简化语言本身的设计在那时算得上是当务之急了.

约翰·麦卡锡发明LISP于1958年,
FORTRAN语言的发展后不久.
首次由史蒂夫·拉塞尔实施在IBM704计算机上.

1961年 第一款交互式游戏“太空大战”诞生
1961年麻省理工学院(MIT)学生史蒂夫·拉塞尔(Steve Russell)设计出了”Spacewar!” 太空大战,
它才是真正运行在电脑上的第一款交互式游戏。
这款游戏运行在PDP-1(编成数据处理器-1)上,
当时电脑技术还相当有限,
空间大战必须使用新阴极射线管显示器来显示画面。
太空大战是一个简单的游戏,它通过示波镜产生图像,
在上面2个玩家可以互相用激光击毁对方的太空船。
这个游戏在PDP-1小型机上运行,
这是一种非常大非常昂贵仅仅被商家选择使用的主机。
不是一般人能玩的
太空大战后来在其他计算机实验室也得到运行,
但只有极少数的经过挑选有权使用主机的人才可能玩到它。

它特别适合用于人工智能方案,因为它有效地处理的符号信息.
Common Lisp的起源,20世纪80年代和90年代,
分别接班人MaclispZetaLispNIL(Lisp语言的新实施)等开发.

它作为一种通用语言,它可以很容易地扩展为具体实施.
编写Common Lisp程序不依赖于机器的具体特点,如字长等.

## Common Lisp的特点
1. 这是机器无关
2. 它采用迭代设计方法,且易于扩展。
3. 它允许动态更新的程序。
4. 它提供了高层次的调试。
5. 它提供了先进的面向对象编程。
6. 它提供了方便的宏系统。
7. 它提供了对象,结构,列表,向量,可调数组,哈希表和符号广泛的数据类型。
8. 它是以表达为主。
9. 它提供了一个面向对象的系统条件。
10. 它提供完整的I/ O库。
11. 它提供了广泛的控制结构。

LISP的内置应用程序

大量成功的应用建立在Lisp语言。
1. Emacs 【神的编辑器】
2. G2
3. AutoCad
4. Igor Engraver
5. Yahoo Store