噫吁嚱!文言文亦能编程!此诚年度最骚语言也

2019-12-18 15:37 稿源:量子位公众号  0条评论

声明:本文来自于微信公众号量子位(ID:QbitAI),作者:栗子 晓查,授权站长之家转载发布。

同学,你可知如何用文言文输出“Hello World”?

请君睁圆双眼注视于此:

 右边一顿输出

吾有一言。曰「「問天地好在。」」。書之。

却为何输出了三遍?

只因有for循环,写作“為是「甲」遍…云云”。甲等于三,便要问三次好。

这骚之过极的文言文编程语言,来自CMU本科生Huang Lingdong。

可编译成Javascript,也可编译成Python,亦有线上编辑器 (IDE) 可直接玩耍。

项目文理两开花,已于GitHub摘得 3000 星,且围观众人皆有话说。

譬如,妒少年之才华:

譬如,点未来之方向:

中科院计算所研究员刘群老师亦感叹:

当下,我等便前去观膜一番,探索此语言藏有何种天地精华。

文言文编程“黑话”

Huang Lingdong同学应该是读过《易经》,毕竟易经是最早论述二进制的古书。他用易经的代表布尔变量中的 0 和1。

“吾有”系列则被用来做定义:

吾有一数是定义int变量;

吾有一爻是定义布尔变量;

吾有一言是定义字符串;

吾有一术是定义函数;

吾有一列是定义数组;

……

一般的编程里,循环判断有if、while、for,文言文编程在这件事上更是变化无穷。下面就是一段文言文书写的判断语句:

若三弗大於五者。乃得「「想當然耳」」。若非。乃得「「怪哉」」也。

翻译过来就是:

1.jpg

也许你会觉得if…else…语句用文言文太啰嗦,但是常用的for循环,用文言文表达却更为简洁。

為是百遍。⋯⋯ 云云。

它的意思是:

2.jpg

如果需要判断某个变量human是否在world中,我们一般用for (var human of world),初学者看到for的这种用法可能会很困惑,而文言文的表示更接近普通人的理解。

凡「天地」中之「人」。⋯⋯ 云云。

古有《易经》,今有金庸小说,在展示定义函数的时候,Huang同学又皮了一下:

吾有一術。名之曰「六脈神劍」。欲行是術。必先得六數。曰「甲」。曰「乙」。曰「丙」。曰「丁」。曰「戊」。曰「己」乃行是術曰。⋯⋯是謂「六脈神劍」之術也。

这里Huang同学将函数名定义为“六脉神剑”,这个函数总共有 6 个输入。

31.jpg

还有更多好玩的函数定义:

声明:本文转载自第三方媒体,如需转载,请联系版权方授权转载。协助申请

相关文章

相关热点

查看更多