lisp语言cond和if套用_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
)
是一
个
字
母
序
列
,如
a
b
c
;
表是由
零个
或多
个
表
达式
组
成的序
列
,表达式之间用
空格
分
隔
开,
放
入一对括号中,如
:
a
b
c
()
(
a
b
c
x
y
z)
(
a
b
(
c
)
d)
最
后
一
个
表是由
四个元素
构成的,其中
第三个元素
本身也是一
个
表。
正如算数表达式
1+1
有
值
2
一样,
Lisp
中的表达式也有
值
,如果表达式
e
得出
值
v
,我们说
e
返回
v
。如
果一
个
表达式是一
个
表,那么我们
把
表中的
第
一
个元素
叫
做操作符
,其
余
的
元素
叫
做自
变
量
。
lisp语言cond和if套用_lisp语言入门相关推荐
- lisp语言cond和if套用_LISP语言入门(CLISP)
曾经翻译整理的一篇LISP语言的入门文章,与大家分享. (请勿转载) ---------------------------------------------------------------- ...
- lisp语言cond和if套用_LISP - 决策
决策结构需要程序员指定一个或多个条件由程序进行评估或测试,以及要执行的语句或语句如果条件被确定为true,如果条件被确定为false那么选择要执行其他语句. 下面是在大多数编程语言中一个典型的决策结构 ...
- lisp语言cond和if套用_方案 – if和cond之间的区别?
but when running, cause error: procedure application: expected > procedure, given: #; arguments w ...
- lisp语言cond和if套用_AutoCAD LISP 循环选择语句cond
(defun c:test() (initget "A0 A1 A2 A3 A4") (setq size (getkword "请输入图纸大小A0,A1,A2,A3,A ...
- lisp语言cond和if套用_在'if'语句中设置多行条件的样式?
Harley Holco.. 679 您不需要在第二个条件行上使用4个空格.也许用: if (cond1 == 'val1' and cond2 == 'val2' and cond3 == 'val ...
- lisp 批量文字求差值_lisp语言对立体测量数据进行高程处理的实现
摘要:本文结合航测工作实际生产案例,利用lisp程序语言,编写程序,实现对Z坐标进行整提调整功能. 关键词:lisp程序 Z坐标 调整 中图分类号: O4-34文献标识码:A 文章编号: 0 前言 与 ...
- lisp语言怎么获取简码_Lisp语言到底神奇在哪里?
前言 在浏览各种技术文章的过程中,经常会看到Lisp这门程序语言. 不过,我一直都不是很在意. 我热爱编程,我的目标是"有能力完成一款游戏的所有程序开发工作". 在我追求这个目标而 ...
- Lisp 家族迎来新成员,函数式语言 Lux 是什么?
代码世界即将加入一门新成员:Lux.你没看错,它不是洗发水,而是古老的 Lisp 家族中新诞生的函数式语言. 目前 Lux 还在研发之中,最新版本是 0.5.0.它可被用来编写一系列在 JVM (Ja ...
- 小语种-lisp-凡利于语言设计者的,也利于语言使用者
"在编程的时候你可能会想 'Lisp 要是有这样或者那样的操作符就好了.' 那你就可以直接去实现它.之后,你会意识到使用新的操作符也可以简化程序中另一部分的设计,如此种种.语言和程序一同演进 ...
最新文章
- Java堆和栈的基本理解
- MyBatis的架构和其运行流程
- php json 不转义,php json_encode中文不转义
- id3决策树 鸢尾花 python_机器学习之分类回归树(python实现CART)
- 江苏自考计算机组成原理多少分及格,自考《计算机组成原理》基本概念第七章...
- 异步 JavaScript 之理解 macrotask 和 microtask(转)
- Nginx学习笔记(三) Nginx基本数据结构
- hadoop 笔记(hive)
- c语言加密字母向右移两位,C语言二进制除法用左右移位来表示
- Julia : 如何一行实现99乘法表?
- Android Studio- 把SVN项目下载到 本地的 操作方法
- [转] 你没看过的囧人囧事大集合
- 惠普m227fdw引擎通信错误_惠普打印机HPM227提示耗材余量错误怎么办?
- 美国国债收益率回复2021年年初水平 黄金同时趋向上走势
- 记一次git pull 错误
- js中===和==的区别
- java mysql 表关系分析_数据库表的关系
- 《给研究生的学术建议》14——答辩
- Stream.count
- Netty框架-IO模型(Linux五大网络IO模型)