当前位置: 首页 > 科技观察

文言编程还不够好玩?这是一个16岁的高中生开发的粤语编程项目

时间:2023-03-16 20:23:01 科技观察

最近,一个很搞笑的喝茶梗,刷新了大家对粤语的认知。其实,粤语一直是一种隐藏着幽默感的方言。想起《旺角卡门》中的无影哥,脑海中是否回荡着学友哥的四字读音?毫无疑问,粤语仍然是需要保护的文化遗产。那么,今天给大家介绍一个有趣的粤语编程语言GitHub项目,其开发者StepfenShawn似乎(自称)是一名来自广州的16岁高中生。目前,该项目的star数已达600+。虽然工作时不会用粤语写代码,但闲暇时玩玩粤语编程岂不是很有趣?项目地址:https://github.com/StepfenShawn/Cantonese粤语编程启蒙下面列出粤语版的《HelloWorld》以及一些基本特性(循环、函数等)、面向对象编程的例子和栈的使用也包括在内。当然,还有各种有趣的编程语法细节,比如用“fix”结束函数,用“use”调用库。项目作者在《5 分钟学会粤语编程》教程中解释,这里的“畀(bei)”在粤语中是“给”的意思,而“嘤”是“看”的意思,所以整句都是“让我看”的意思,而按照“先点样本?”表达委婉的语气,意思是“怎么样?”。对于这种有趣的互动,作者解释说,“你需要用委婉的语气给电脑留下良好的第一印象,不然电脑可能会离家出走,对吧?”而xi1中的赋值语句“say|A|”“speaking”表示“正在说话”,“xi”表示“是”。按照作者的说法,编程时也可以写成“system”。同理,“wuxi”是“不”的意思,“dingxi”是“还”的意思。end|”相当于一个循环,“end”是循环的条件。和break类似的用法有三种:“叫工作”、“辛苦了”、“跟我一样”。前两个是很容易理解,而第三个“躝”是“滚”的意思,所以你用哪个完全取决于你的心情。”直观地告诉计算机该函数接下来要做什么,而“fix”的意思是“搞定”,起到结束的作用。“掟一...让我们看看”的函数是抛出异常,其中“掟”有静止或抛出的意思。而“谂”是“思考”的意思,让电脑做出判断。“Executing...finding...handlingtail”对应try,except,finally。“执”就是收拾房间,“捡见”就是收拾的时候发现垃圾,“抱尾巴”就是选择是否扔掉垃圾。说实话,这个“命令”比import还要形象。没想到面向对象编程还能进行。“渠”是“它”的意思,指的是一个物体;“Quai”意为“其”,可用于构造属性;“取之得”意为“会”,用于构造类的方法;“老窦”是“父亲”的意思,用来形容继承关系。最后,用“我懂了”的结束语问电脑你懂不懂,这样会让电脑感觉更友好,更容易接受介绍给它的人。这里的“迪奥哥”很明显是一个栈,“topyou”入栈,“throwyou”出栈。高级粤语编程下面列举一些粤语编程的高级方法,如二分查找、线性查找、冒泡排序、插入排序、KNN等算法。如果你能看到这个,说明你很感兴趣,继续学习吧。你没看错,既然这门语言是Python开发的,那么写机器学习算法也很方便。这里是作者的灵魂画(自称是海龟)。上图就是用这种语言开发的迷宫游戏的界面。代码链接:https://github.com/StepfenShawn/Cantonese/blob/main/examples/games/game.cantonese下面是作者实现的网页和App示例:添加语言的方式粤语编程语言运行在Python虚拟机上,支持Python3,用法如下:也可以转换为Python运行:生成HTML: