如何设计一门计算机编程语言呢?

如何设计一门计算机编程语言呢?,第1张

第一步:首先要对这种语言的大体 *** 作和理论知识要有一些了解,这个可以看哈相应的教材。第二步:研究代码程序的执行过程第三步:就是最重要的要多练,最好是再点由浅到深的题去做这样只要你坚持两个月相信你会有很大的进步的

       如果你仅仅有一般程序设计的基础,直接要设计一门语言是有难度的。结合我个人的经验,以下路径应该比较适合语言初学者:你需要有基本的编译原理常识。构造基本的编译原理常识,一方面来自于你对已有语言的使用经验,了解基本术语。比如我用C,那么我起码知道语言要素包括宏、表达式、语句、语句块、函数、指针等;我还知道C语言有编译、链接和执行三个阶段。这些基本概念对你宏观掌握你的学习进程是很有必要的。另外一方面编译原理的常识,要来自图书。比如龙书、SICP。

       在这一步,你得知道大部分语言的处理都要分为词法、语法、语义和代码生成四个阶段。每个阶段,分别是做什么的。了解具体的编译算法。了解到什么程度,取决于你使用第三方工具,还是需要自己从字符开始处理。个人建议,乔姆斯基文法体系、(扩展)巴克斯范式(EBNF),正则表达式,和LL(1)的递归下降分析法是必须要掌握的。对LL(k),LR(k)要有概念。其中,四则运算表达式的分析是很好的练习。对语法的感觉。

       初学者设计语言的难度有两点。第一,不知道什么样的语法/语义是你需要的;第二,不知道你设计的文法能否实现。你是需要一个类似于自然语言的脚本,还是只是一个表达式。经过3阶段的训练我认为你已经有了独立撰写语法的能力。可以写一个基础版本的出来。实现你的语言,特别是词法和语法部分。这一步最好能Log出尽可能多的信息,例如词列表并打印出分析树。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11318955.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存