智东西(公众号:zhidxcom)
编| 李水青
智东西12月19日消息,近日,世界上第一种基于中国文言文的编程语言诞生,志愿者已经用它编写了了几十个程序,如:基于古代中国算命算法的程序等。
这种新语言的开发者名叫Huang Lingdong,是卡内基梅隆大学的一位95后本科生。他之前曾利用计算机生成过一幅无限的的中国山水画。他还参与创造了第一部,也是迄今为止唯一部人工智能制作的中国歌剧。
大约一年前,Huang完成了文言文编程的核心部分。它包括一个渲染器,可以以类似于古代中文文本页面的方式显示程序。据了解,这几乎是世界上第一门文言文编程语言,但是其底层还是需要转换成Python或JavaScript运行。
一、文言文程序算命、算圆周率
Huang在上海长大,在学校里学过基本的文言文。他回忆说:“我对中文很着迷,十几岁的时候就读了很多文言文,现在在读《淮南子》。”《淮南子》是公元前2世纪中国古代淮南王庭上编纂的一部关于哲学和治国之道的著作。‘
他说,目前市面上已经有数十种程序是用文言文写的,其中许多是中国古代数学书籍中的数学算法的实现。例如,pi_liuhui.wy重现了公元3世纪数学家刘辉如何计算圆周率的方法,Crt.wy是中国余数定理,Pascal_triangle.wy计算了帕斯卡三角形等。
据了解,黄最喜欢用文言语编写的程序之一是“ divination.wy,是《易经》中描述的算命算法。”他补充说:“我本来打算自己实施,但是热情的贡献者击败了我。”
二、断句问题成挑战
编程用了繁体中文字符和文言文语法,发展这门语言的一个挑战是文言文如何不用空格把句子分成单词。“因此如何分割句子是读者而不是程序员的任务。”Huang说。
例如,如果以英语读写的读者看到了“煎饼糊”,他们将不得不依靠其先验知识将其解读为“煎饼面糊”,而不是“煎饼时煎糊了”。
为了克服这一挑战,Huang指出编程语言仅具有一定数量的关键字。因此,文言文编程在每个程序中从最长的关键字变成最短的关键字,从而解密程序员想要什么。最终,这种方法奏效了。
Huang的文言文编程软件受到了广泛关注,他表示为此感到惊讶和兴奋:“我以为以前做过很多很酷的项目,但是这个项目在中国格外流行。”
Huang说:“在此之前,我主要按照自己的节奏进行工作,但是现在合作变得至关重要。除了共同编写代码外,我还必须检查其他人的代码,仔细评估每条建议。但是,我认为我很享受这次体验,尤其是因为我得到了一大帮杰出的贡献者。”
三、建社区以保持语言的生命力
目前,文言文编程的贡献者正在研究Python、Ruby、JavaScript、C++和Java编译器,图形库和图形用户界面,以及一个供人们编写和共享代码片段的摘录站点。
Huang说:“最重要的是,我们正在寻找围绕该语言建立社区的方法。我认为这可能是其生存的关键时刻。人们最初有热情,但是要保持语言的生命力,就需要有一个用户社区。”
此外,Huang目前正在研究文言文编程的入门指南,该文本身是用古典中文编写的。他说:“大约40%完成了,目标读者是完全没有编程经验的人。但是,我需要与上述读者进行测试,以确保它的实用性。”
Huang说:“总而言之,现在我有了自己的编程语言,这种语言可能受到许多像我这样的文言文爱好者的欢迎,我认为发明自己的编程语言是每个程序员都会想到的一个想法。”
结语:文化传承和开源精神
也许有人会认为,文言文编程并没有那么大的实用价值,但是这并不失为一种传承文脉、保护文心的好方法。
正如在文言文编程的项目开篇中,Huang回顾了从仓颉造字到尧舜时代的结绳和数手指计算,从鲁班的木鸢到诸葛亮的木牛流马的历史,希望自己作为留学海外的中华学子,不因年轻或者知识的浩瀚无涯而退缩,并认为这就是开源的精神内核。
▲文言文编程的项目开篇介绍
在线地址:http://wenyan-lang.lingdong.works/ide.html
文章来源:IEEE.