从中华传统文化到中文编程
看了 知乎@吴烜xuan三声 的几篇关于中文编程的文章,我也写点我对中文编程的看法。
如果没有银弹,那就不停造DSL
通用编程语言这块蛋糕已经被国外分得差不多了,如果想做中文编程,应该从一些细分领域开始。
这个细分领域最好得是中华特色,跟中华上下五千年传统文化分不开的那种,比如文言文、非物质文化遗产等。这里的文言文不是那种用文言文来编程的玩具,而是指学术研究、工程方面的,比如借助编程这个工具,将系统性、规范性、形式逻辑等引入文言文的分析和研究当中。
这里的编程其实是一种广义编程,不一定是真的写代码,但可以作为一种思考模式、思想体系(类似狭义编程OOP中的设计模式)来引入,而这种场景下,中文“编程”就是顺理成章的事了。
我大中华最重要的特色就是文化(文明6中我玩中国都是文化胜利),所以能弘扬世界的中文编程和中华文化必定密不可分。
文化--感性,编程--理性
个人一点想法
结合 LLM
现在 GPT4 出来了,GPT4预先微调中文编程语言代码规范,然后国人就可以先通过中文把自然语言描述的需求传给 GPT4,GPT4 将其翻译到格式化的中文编程语言。
为什么不直接手写中文编程语言的代码?因为人机交互的编程是要让机器理解,是比较规范化的,需要明确清晰的语义。如果让编程初学者上来就要求学习编程的条条框框,反而会降低对编程的兴趣。
文言文和 LLM 关系密切
结合图形编程
中文编程语言代码应该可以和图形化的程序流互相转换。
图形编程也是降低编程门槛的一个重要方法,在初学时对着一堆代码(即使是汉字)容易让人望而却步。做一个类比就是传统文字编程就像 LaTeX,而图形化编程是 Word,同理还有 Linux 对 Windows。
为什么不纯图形编程?因为在工程实践中,需要版本管理,而一堆图形做版本管理也总要有个易 diff 的载体,那就是文本。文本也是一种便携性强、可移植性高的载体,方便复制粘贴,也存在很多地方不能显示图片,但都可以显示文本。
那文本也可以全用英文表示,为什么要用中文?因为中文化的文本在中国环境下还有易传播、易读、低门槛的特点。其实如果想在世界范围推广这个图形编程语言,那么其文本是应该做国际化的,可以有多种语言支持。
非遗和可视化关系密切,艺术同时需要抽象和具象
中华优秀传统文化是中华民族的精神命脉
“求木之长者,必固其根本;欲流之远者,必浚其泉源”。中华优秀传统文化是中华民族的精神命脉,是涵养社会主义核心价值观的重要源泉,也是我们在世界文化激荡中站稳脚跟的坚实根基。增强文化自觉和文化自信,是坚定道路自信、理论自信、制度自信的题中应有之义。如果“以洋为尊”、“以洋为美”、“唯洋是从”,把作品在国外获奖作为最高追求,跟在别人后面亦步亦趋、东施效颦,热衷于“去思想化”、“去价值化”、“去历史化”、“去中国化”、“去主流化”那一套,绝对是没有前途的! ——2014年10月15日,习近平在文艺工作座谈会上的讲话
别老想着仿造国外做什么通用编程语言,那些都是面向计算机、面向工程的东西。
计算机才发展了多少年?中华传统文化又有多少年?
祖国有这么一大堆宝藏等着各位发掘呢!
🧬
当有多种细分文化的中文DSL出现了,再考虑做大一统中华文化编程语言(自底向上设计);同时,结合国家政策,大力弘扬中华传统文化。双线结合,并行发展。
到那个时候,中华文化将会遍布世界每个角落。
