lisp实战文库_LISP编程举例
Lisp
是一門歷史悠久的語言,全名叫
LISt
Processor
,也就是“表處理語言”
,它是由
John
McCarthy
于
1958
年就開始設計的一門語言。
和
Lisp
同時期甚至更晚出現的許多語言如
Algo
等如今大多已經消亡,
又或者僅僅在一些特定的場合有一些微不足道的用途,
到現在還廣為
人知的恐怕只剩下了
Fortran
和
COBOL
。但唯獨
Lisp
,不但沒有隨著時間而衰退,反倒是
一次又一次的煥發出了青春,從
Lisp
分支出來的
Scheme
、
ML
等語言在很多場合的火爆程
度甚至超過了許多老牌明星。那么這顆常青樹永葆青春的奧秘究竟在哪里呢?
如果你只接觸過
C/C++
、
Pascal
這些“過程式語言”的話,
Lisp
可能會讓你覺得十分不同尋
常,首先吸引你眼球(或者說讓你覺得混亂的)一定是
Lisp
程序中異常多的括號,當然從
現在的角度來講,
這種設計的確對程序員不大友好,
不過考慮到五六十年代的計算機處理能
力,簡化語言本身的設計在那時算得上是當務之急了。
Lisp
的基本語法很簡單,它甚至沒有保留字(有些語言學家可能對這一點有異議,別怕,我
聽你們的)
,它只有兩種基本的數據,僅有一種基本的語法結構就是表達式,而這些表達式
同時也就是程序結構,
但是正如規則最簡單的圍棋卻有著最為復雜的變化一樣,
Lisp
使用最
基本的語言結構定義卻可以完成其它語言難于實現的、最復雜的功能。
廢話少說,現在我們就來看看
Lisp
語言中的基本元素。
Lisp
的表達式是一個原子
(atom)
或表
(list)
,原子
(atom)
是一個字母序列,如
abc
;表是由零個
或多個表達式組成的序列,表達式之間用空格分隔開,放入一對括號中,如:
abc
()
(abc
xyz)
(a
b
(c)
d)
最后一個表是由四個元素構成的,其中第三個元素本身也是一個表。
正如算數表達式
1+1
有值
2
一樣,
Lisp
中的表達式也有值,如果表達式
e
得出值
v
,我們說
e
返回
v
。如果一個表達式是一個表,那么我們把表中的第一個元素叫做操作符,其余的元
素叫做自變量。
正如歐幾里德的幾何世界中有五個公理一樣,我們在這里給出
Lisp
世界中的
7
個公理(基
本操作符)
:
(quote
x)
返回
x
,我們簡記為
'x
(atom
x)
當
x
是一個原子或者空表時返回原子
t
,
否則返回空表
()
。
在
Lisp
中我們習慣用原子
t
表示真,而用空表
()
表示假。
>
(atom
'a)
t
>
(atom
'(a
b
c))
()
>
(atom
'())
總結
以上是生活随笔為你收集整理的lisp实战文库_LISP编程举例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python抓虫_Python 七步捉虫
- 下一篇: linux 测试vim编译器_软件测试工