自制编程语言
一听到这个话题,有的人会想:太疯狂了,制作编程语言肯定很有难度吧?有人会怀疑:制作编程语言能有什么用呢?其实这些都是误解。
制作编程语言在技术层面上其实并不难,只要掌握一些基础知识即可。而且,制作编程语言对于我们深入理解日常使用的C、Java、JavaScript等语言都有帮助。在一些应用程序的内置脚本语言中,我们也经常会因为种种限制从而萌生制作替代语言的想法。因此,自制编程语言并不是少数极客的个人癖好,它对大多数程序员都颇具实用价值。
日本关于制作编程语言的书已经很多了,其中一些还被选定为大学教科书。这些书中常出现有限状态机、NFA、LL(1)、LR(1)、SLA等专业词汇,同时还大量使用∩、∈等数学符号,对于不熟悉这部分理论知识的人(包括我自己在内)来说非常难以读懂。针对这种现状,本书会偏重实践,避免枯燥的理论。
本书将分别制作两种编程语言:crowbar与Diksam。crowbar是运行分析树的无类型语言,Diksam是运行字节码的静态类型语言。无论哪种语言,都具备四则运算、变量、条件分支、循环、函数定义、垃圾回收等功能,最终版则可以支持面向对象、异常处理等高级机制。总之,作为现代编程语言所必须具备的功能都基本覆盖了(唯一可能没实现的就是多线程了吧)。所有源代码都提供下载,读者可以一边对照书中的说明一边调试源代码,这样应该不难理解整个程序的运行机制。
当然,要一次实现如此多功能的编程语言,对于初学者而言可能有点吃力,因此本书会详细介绍crowbar、Diksam的制作步骤,请放心。
在制作编程语言的过程中,我体会到了一种无法用语言形容的快乐。其实无论在日本或其他地区,世界上还有很多人都在尝试自制编程语言,这正是编程语言不断增加的原因。如果以本书为契机,有朝一日你也向本已混乱的巴比伦之塔再添一门新语言的话,作为本书作者,这将是无上的光荣。
-
办公综合管理,财产管理表格 - 企业管理表格
财产登记表.doc财产登记卡.doc财产记录保管表.doc财产领用单.doc财产移出(移入单).doc财产移交清单.doc财产请修单.doc报废单.doc财产减损单... 1302 0 24-07-31 -
jquery移动端滑动图片展示
339 0 21-06-02 -
Heavens Above - 一个天文爱好者的网站
Heavens Above这个网站展示了各种人造天体的实时位置,以及正在飞离太阳系的卫星、日食、月食等网站地址:Heavens Above 1072 0 24-11-18 -
销售页图标
830 0 21-07-12 -
疯狂XML讲义
自从1998年问世以来,XML已经广泛应用于各种开发平台、各种编程语言中,并衍生出大量新的标记语言:如SVG(Scalable Vector Graphics)、... 1123 0 24-05-24 -
iFlyVoice 讯飞实时语音转文字 - 讯飞输入法
iFlyVoice是由讯飞科技发布的一款适用电脑上(笔记本电脑)、智能机、平板、移动数字电视等各种各样智能终端的电脑输入法,讯飞语音电脑输入... 1025 0 25-02-15 -
JAVA 核心技术:基础知识
1995年底,Java语言在Internet舞台一亮相便名声大噪。其原因在于它将有望成为连接用户与信息的万能胶,而不论这些信息来自于Web服务器、数... 1020 0 24-05-28 -
如何专注于重要的事情:1/6分解法
我们都会有过这样的经历:我们心里想着很多重要的事情要去做,但是在我们开始真正重要的事情之前,我们会去先做一些无关紧要的事情,例如:... 633 0 25-03-03
发表我的评论
- 这篇文章还没有收到评论,赶紧来抢沙发吧~