Lisp-程序结构

  • 时间:
  • 浏览:76
  • 来源:it300
lisp表达式称为符号表达式或s表达式。s表达式由三个有效对象、原子、列表和字符串组成。任何s表达式都是有效的程序。lisp程序在解释器或编译后的代码上运行。解释器在重复的循环中检查源代码,也称为读取-评估-打印循环(repl)。它读取程序代码,对其进行计算,并打印程序返回的值。一个简单的程序让我们编写一个s表达式来查找三个数字7、9和11的和。为此,我们可以在解释器提示下键入。( 7 9 11)lisp返回结果−27如果要运行与编译代码相同的程序,则创建名为myprog.lisp的lisp源代码文件,并在其中键入以下代码。实时演示(写入( 7 9 11))当您单击执行按钮或键入ctrl e时,lisp立即执行它,返回的结果是−27lisp使用前缀表示法您可能注意到lisp使用前缀表示法。在上述程序中, 符号用作数字求和过程的函数名。在前缀表示法中,运算符s写在操作数之前。例如,表达式a*(b c)/d will be written as−(/(*a( b c))d)让我们再举一个例子,让我们编写代码将华氏60度的温度转换为摄氏度-此转换的数学表达式将是−(60*9/5) 32创建一个名为main.lisp的源代码文件,并在它。实时演示(write( (*(/9 5)60)32))当您单击“执行”按钮或键入ctrl e时,lisp立即执行它,返回的结果是−140lisp程序的评估lisp程序的值有两部分−通过读卡器程序将程序文本转换为lisp对象根据SE对象由评估程序执行评估过程采取以下步骤——读卡器将字符串转换为lisp对象或s-expressions。评估器定义由s-expressions生成的lisp表单的语法。第二级的计算定义了一种语法,该语法确定哪些s表达式是lisp形式。该计算器作为一个函数工作,该函数将有效的lisp形式作为参数并返回一个值。这就是为什么我们将lisp表达式放在括号中的原因,因为我们将整个表达式/表单作为参数发送给评估者。“hello world”程序学习一种新的编程语言直到你学会如何用这种语言迎接整个世界才真正开始,对吧!因此,请创建名为main.lisp的新源代码文件,并在其中键入以下代码。现场演示(写一行“hello world”)(写一行“我在‘教程点’!学习lisp”)当您单击执行按钮或键入ctrl e时,lisp立即执行它,返回的结果是−hello worldi am at‘tutorials point’!学习Lisp

猜你喜欢

希腊最高法院批准俄罗斯对比特币嫌疑人的请求

希腊最高法院批准俄罗斯对比特币嫌疑人的请求希腊最高法院上周五表示,一名据称使用比特币数字货币洗钱40亿美元的俄罗斯人应该被引渡到俄罗斯,一位法院消息人士说。AlexanderV

2019-02-01

塑造美国网络防御的创造性破坏和自满情绪

塑造美国网络防御的创造性破坏和自满情绪创造性的破坏,思维的范式转换取代现有的秩序,可能是一个难以捉摸的概念,但它作为人类行为驱动力的力量是不可否认的。在硅谷和其他美国的高层科技

2019-02-01

为什么我(非常)担心PRISM

为什么我(非常)担心PRISM美国国家安全局正在利用我们的数字生活,监控语音电话,电子邮件,社交媒体以及谁知道什么。美国国家安全局方面的人说,这是为了国家安全;它已经停止了恐怖

2019-02-01

先发优势:为什么新的恶意软件最初会打败反恐

先发优势:为什么新的恶意软件最初会打败反恐虽然反病毒解决方案可以有效对抗广泛使用的恶意软件,但是有一个很好的机会,新的恶意软件会躲过那些解决方案。最近有重大安全事件的报告激增,

2019-02-01

台湾银行抢劫与朝鲜黑客有关

台湾银行抢劫与朝鲜黑客有关最近针对台湾一家银行的网络抢劫事件已被安全研究人员联系到一个据信在朝鲜境外活动的臭名昭着的威胁组织。黑客利用SWIFT全球金融网络大致窃取来自台湾远东

2019-02-01