program-in-chinese / overview

中文编程的历史、现状和展望。issue 中进行相关问题的讨论.
https://zhuanlan.zhihu.com/codeInChinese
GNU General Public License v3.0
383 stars 34 forks source link

可尝试从语法角度重建中文编程语言(极难) #192

Open feihu233 opened 2 years ago

feihu233 commented 2 years ago

从语法角度设计编程语言需要一定语言学基础 很多人将 Python 的火热归于“贴近自然语言”,这个自然语言指的实际上就是英文语言的语法。在反驳“中文编程语言”的回答中,经常出现大量引用“强行翻译成中文的代码”来论证中文无法编程,这其实就是由于中英文语法的不同导致的。 英文语法不止是程序组织结构,也会出现在库调用上。比如基于“我天天去学校”写一段代码,中文逻辑可能是“我-每天('去学校')”,但英文就会是"me.goSchool('everyday')",而如果用英文语法去写中文代码,就会变成“我-去学校('每天’)。在参数顺序,链式调用上也会有类似的情况。阅读反对中文编程的人强转的代码时,可以试着用中文逻辑重构,看看如何转化为贴近中文语法的调用。 要达成这种目的,我们可以通过柯里化,重写覆盖等来实现,更深一层的,对关键字乃至程序结构都需要做出更改。这种工作就相当艰巨了。 在语言学方面,可以找本入门教材看看,看完就能对中英文语法的对比有一个基本的了解。这即使对于现在做的中文编程工作也有帮助。

nobodxbodon commented 2 years ago

之前有过一些中文特性相关探讨,比如 一种改进中文 API 可读性的方法:参数不限于在末尾。 为接近实用起见,不妨用更接近实际的代码举例?

nobodxbodon commented 2 years ago

关于中文语法的语言设计, 最近的个人尝试:https://gitee.com/zhishi/SomeLanguage 另一个功能更广的:https://gitee.com/linux_23/kaelang