毕竟有易语言在前,有人认为中文可以降低国人学习编程的门槛,也增强汉语的国际地位。然而最近大火的文言文编程语言,让你明白什么叫“中文比英语还难”。
Hello wenyan
最近有个 GitHub 项目火了 —— 文言编程语言 / wenyan-lang。
项目地址:https://github.com/LingDong-/wenyan-lang
这一项目并不是简单的将程序中的英文字符换成了中文,而是利用 NLP 的一些技术,将文言文程序语法转换到 JavaScript 或 Python 运行,有一定的技术难度。项目问世几日即获赞 2.2K,还得到了很多人的微博转发。
学语言嘛,当然先从 “Hello world” 开始,看看文言版怎么写:
1 吾有一數。曰三。名之曰「甲」。
2 為是「甲」遍。
3 吾有一言。曰「「問天地好在。」」。書之。
4 云云。
没看懂,编译成 JavaScript:
1 var n = 3;
2 for (var i = 0; i
3 console.log("問天地好在。");
4 }
运行:
1 問天地好在。
2 問天地好在。
3 問天地好在。
完全的中文编程有木有,使用古汉语语法,具有图灵完整性,可以编译成 JavaScript 或 Python。
如同古人篆书一般,一顿之乎者也,程序写好了!
基础语法
赶紧学起来,第一章变量走起,中文编程肯定不能用 abc,还好我们有甲乙丙:
true/false 我们也有对应的 陽/陰(繁体的阳/阴),类型就称为“爻”(卦符的基本符号):
if 判断也没问题:
循环更为简洁,直接声明次数,最后以云云结尾:
加减乘除一应俱全,连逻辑运算符都支持:
容器类型也支持,而且尊重汉语习惯,首个下标是从一开始:
下面是进阶语法了,定义一个函数 吾有一術:
代码实例
作者提供了经典程序题目的文言版代码,比如埃拉托斯特尼筛法、 快速排序、曼德博集合、汉诺塔。
另外作者还提供了在线 IDE,可以直接编译执行代码。
快排
曼德博集合
国内程序员热议
@minexo79:這到底是吸了多少才能做出這種東西?
@困的周叔叔:有种自己编译原理白学了的感觉
@是俊不是脑残粉:别人的大四,佩服啦
@温兴月:如果编程最早用文言文,中国人学几个月,外国人学几年
@imSuperZhang:这特么比英文的还难
wenyan 的 GitHub issue 中,除了很多赞扬之外,还有不少认真提建议的,
也有在打口水仗的……
看完这些代码让我感觉:
《九章算术》就是一本算法导论;
《孙子兵法》就是一本安全攻防;
《易经》大概是一本二进制逆向吧...
本文综合自面向人生编程 ,程序员的那些事
喜欢请多多关注易杰智科技!
领取专属 10元无门槛券
私享最新 技术干货