lisp的解释器】的更多相关文章

Description XXC小童鞋对lisp非常感兴趣,不过lisp是一个比较小众的黑客语言,因为它采用了一种不太容易理解的表达方式——S表达式. S表达式形式如下: (Operation A B……)     其中Operation是操作符,A.B等是操作数(操作数的数量根据操作符而定),A.B等可以是直接的数,也可以是其他S表达式.算式的结果为A (Operation) B.例如(+ 1 2)=3. 现在XXC童鞋希望你为他做一个简化版的lisp解释器,可以处理基本的四则二元运算. Inp…
lisp是一门简单又强大的语言,其语法极其简单: (+ 1 2 ) 上面的意思 是:+是方法或函数,1 ,2 是参数,fn=1+2,即对1,2进行相加求值,结果是:3 双括号用来提醒解释器开始和结束. 之前在iteye写过一篇文章来简单介绍怎么写lisp的解释器: http://gyc567.iteye.com/blog/2242960 同时也画了一张草图来说明: 因为lexer(词法分析器)主要工作就是把程序的字符串表达式转化为tokens.(Pair),以下是百科对词法分析的说明: 词法分析…
原文:Lisp Style Tips for the Beginner 本篇文章是一篇非正式的摘要,旨在帮助新手写出高效.易读的Lisp代码. 1 赋值   1.1 避免使用eval.赋值是Lisp内置的流程,所以你几乎没有任何理由自己调用它.如果你使用了它,那么请停下来并且重新思考一下你的问题,因为你解决问题的方法一定是错的. 1.2 熟悉宏.它是Lisp的一个重要特性,但是一个实现的很差的宏可以引起很严重的错误,而且对新手来讲很难解决.在你理解Lisp的解释器工作之前避免使用宏.绝不要编写宏…
C++,一个众所周知的 C 语言的扩展,是一个优秀的.强大的.通用编程语言,它能够提供现代化的.通用的编程功能,可以用于开发包括视频游戏.搜索引擎.其他计算机软件乃至操作系统等在内的各种大型应用. C++,提供高度可靠性的同时还能够允许操作底层内存来满足更高级的编程要求. 虽然已经有了一些供程序员用来写 C/C++ 代码的文本编辑器,但 IDE 可以为轻松.完美的编程提供综合的环境和组件. 在这篇文章里,我们会向你展示一些可以在 Linux 平台上找到的用于 C++ 或者其他编程语言编程的最好的…
*导读:普通用户只要花1分钟看第二部分即可.高级用户请忽略本文* 目录 1. 编辑器之战 2. vi的使用 2.1 vi的3个模式 2.2 vi的3个模式切换 2.3 vi最基本的命令 2.4 vi的基本使用流程 2.5 转有编辑命令(看看即可) 3. 进阶,普通用户有兴趣可以google查看 1.编辑器之战 Emacs 是神的编辑器,而Vim 是编辑器之神.     https://zh.wikipedia.org/wiki/编辑器之战     编辑器之战是指计算机编程领域内,两类文本编辑器v…
Emacs 是神的编辑器,而 Vim 是编辑器之神.二者为何会有如此美誉,且听本文向你一一道来. 目 录 0. 序章:神器的传说 1. 无敌的可扩展性 1.1 可扩展性给了软件强大的生命 1.2 Emacs是伪装成编辑器的操作系统 1.3 Vim不只是Vi 2. 特立独行的魅力 2.1 可扩展性让你倾注了灵魂 2.2 独特的操作方式让你中了毒 3. 黑客的编辑器 4. 神器引发的圣战 0. 序章:神器的传说 在这个蔚蓝色的星球上,流传着两大神器的传说: 据说Emacs是神的编辑器,而Vim是编辑…
Emacs 是神的编辑器,而 Vim 是编辑器之神.二者为何会有如此美誉,且听本文向你一一道来. Author: Jiqing Wu email: jiqingwu@gmail.com homepage: http:://hi.baidu.com/jiqing0925 create: 2011-01-09 update: 2011-01-09 面向的读者: 经常用电脑处理文本和编程的同学 目录 0. 序章:神器的传说 1. 无敌的可扩展性 1.1 可扩展性给了软件强大的生命 1.2 Emacs是…
(整理) 平台:                造型引擎——ACIS         显示引擎——Direct3D/OpenGL/GDI         应用框架——HOOPS   组件关系图     ACIS——造型引擎 ACIS是美国Spatial Technology公司推出的三维几何造型引擎,它集线框.曲面和实体造型于一体,并允许这三种表示共存于统一的数据结构中,为各种3D造型应用的开发 提供了几何造型平台.Spatial Technology公司在1986年成立,目前ACIS 3D T…
版权申明:本文为博主窗户(Colin Cai)原创,欢迎转帖.如要转贴,必须注明原文网址 http://www.cnblogs.com/Colin-Cai/p/11329874.html 作者:窗户 QQ/微信:6679072 E-mail:6679072@qq.com 对于函数式编程来说,map/reduce/filter这几个算子非常重要,其中有的语言不是reduce而是fold,但功能基本一样,不过reduce的迭代一般只有一个方向,fold可能会分两个方向,这是题外话. 这篇文章就是来理…
vim和emacs 在编程界一直有两大神器的传说.这两大神器一个是emacs,一个是vim.一个是神的编辑器,一个是编辑器之神. 程序员的圈子里面也一直流传着一个段子,说是世界上的程序员分为三种.使用vim的,使用emacs的,以及使用其他的. 为什么vim和emacs能得到如此推崇呢? emacs emacs的封神是因为其高度的可扩展性,你可以用vim打游戏,听歌,画画,上网,收发e-mail,代替tty,甚至控制你们家咖啡机煮咖啡. emacs基于lisp语言解释器,其强大之处几乎混淆了操作…