一、语言设计
1. 设计目的:
一直以来,有关于中文编程语言的争论从未停止,很多程序员认为没必要设计中文编程语言,主要观点为没必要,例如中文编程不如英文方便,中文编程语言风格难以习惯,甚至与感觉中文写的代码很怪异等。但使用中文写的程序在可读性上无疑更优于英文编程(至少对大部分中国人来说是这样),而且使用中文编程也能使非专业人士更容易上手编程,从而自己设计程序完成工作。
当然,设计一门语言绝对不是一件轻松容易的事,首先作为现代编程语言,面向对象是基础,然后灵活性,可扩展性,与其他语言互相调用以及平台的兼容性等都需要考虑。其次现在计算机基本都是多核CPU,那么如何方便使用多核加速等也应当考虑其中。当然这需要很多大佬的参与才能完成,而我目前的目的很简单:探索一套适合中文编程的语法规则。当程序编写规则确定之后,底层的各种功能支持皆可由感兴趣的网友一起完善。
顺便说一句,项目暂命名为“无极”。作为开源项目,仓库建立在gitee(码云)中,网址为:
https://gitee.com/zhf888/wuji.git
2. 设计目标:
1、项目参考前桥和弥所著《自制编程语言》,使用lex和bison工具制作词法分析器和语法分析器。之所以不自己写而使用工具的原因有两个,第一本人非计算机专业,没学过编译原理,所以从零开始写词法分析器有一定难度。第二既然有可用工具,而且本项目是完全开源,不作为商业用途,任何人都可以参与完善和优化,任何人都可以下载使用的,不会涉及许可证等问题,因此可不必花太多时间在造砖上。当然后续如果有大佬支持使用纯C语言写出词法分析器则更好。(只是不知道有没有感兴趣的网友一起来完善)
2、考虑应当方便各硬件平台兼容,因此决定设计解释语言,使用C语言编写解释器,待解释器完善后,可在各平台编译出适合其运行的程序。另外虽然作为程序,也不应该如天书一般谁都看不懂,所以自然语言化也是考虑之一。
3. 代码规则
1. 源文件使用UTF-8编码:当前使用范围较广的编码方式为utf-8,且大部分编辑器都支持编写utf-8格式文档。
2. 程序结构&#x