要搞清楚这个问题,我们可以先来了解:
1、流行的世界语言(在世界或国际上被广泛使用的语言)和编程语言之间到底有没有必然联系?
2、创造有影响力编程语言的程序员有没有来自非英语母语的国家?
3、世界上有哪些非英语的编程语言,它们到底是一个什么情况,为什么不流行?
4、如果出现有影响力的中文编程语言,创造者应该具备什么条件?
英语在编程语言的影响力大大超出其使用人数这里有一份可信度较高的世界语言使用人数排名,其中汉语使用人数遥遥领先于其他语言,英语尽管使用人数只有4.8亿,但是在程序的世界里英语却有着绝对统治的地位,拥有着完全不对称的影响力,
- 汉语(11.2亿)
- 英语(4.8亿)
- 西班牙语(3.2亿)
- 俄语(2.85亿)
- 法语(2.65亿)
- 印地语/乌尔都语(2.5亿)
- 阿拉伯语(2.21亿)
- 葡萄牙语(1.88亿)
- 孟加拉语(1.85亿)
- 日语(1.33亿)
- 德语(1.09亿)
到底是因为“编程语言只能用英语”还是因为“编程语言也可以用其他语言,只是因为英语领先了而已?”
流行编程语言都来自哪些国家?世界上流行的编程语言很多,这些创造者们是不是都是来自以英语为母语的国家?我们来列举一下当前最流行的那些编程语言以及这些创造者们的出生与成长的国家:
编程语言 | 创造者 | 来源国家 |
Python | 吉多·范罗苏姆 | 荷兰 |
C语言 | 丹尼斯·里奇 | 美国 |
C | 比雅尼·斯特劳斯特鲁普 | 丹麦 |
Java | 詹姆斯.高斯林 | 加拿大 |
JavaScript | 布兰登·艾奇 | 美国 |
C# | 安德斯·海尔斯伯格 | 丹麦 |
PHP | 拉斯姆斯·勒多夫 | 加拿大 |
Visual Basic | Alan Cooper | 美国 |
Ruby | 松本行弘 | 日本 |
Perl | 拉里·沃尔 | 美国 |
Objective-C | 布莱德·考克斯 | 美国 |
Golang | Rob Pike | 加拿大 |
Lua | 三人小组研发 | 巴西 |
以上只是不完全表单,可以看到大多数流行的编程语言都是来自北美(美国和加拿大)的程序员创造的,但是也有来自丹麦、荷兰、日本的编程语言,但是这些编程语言最终都采用了英语?为什么会这样呢?
如果说荷兰语、丹麦语都是极为小众的语种,连前十都排不进,那来自日本创造了Ruby的松本行弘(出生、求学、工作始终没有离开日本)为什么没有让Ruby使用日语?那我们不禁要问:
为什么全世界至今没有出现有影响力的日语编程语言?
同样的巴西官方语言是葡萄牙语,为什么Lua仍然使用的是英语?而且葡萄牙语使用的人数比日语还多。
非英语的编程语言到底是一个什么情况?世界上有没有非英语的编程语言,它们到底是什么情况,又为什么流行不起来?在编程语言历史库(HOPL)里我们了解到这样一个情况:
世界上有大约8500多种编程语言,而其中大约有2400种编程语言是来自美国的程序员创造的,来自英语的约600种,加拿大约160种...也就是说仅仅只有大约三分之一的编程语言是来自以英语为母语的国家。
不过值得一提的是,那些不是以英语为母语的程序员为了让自己开发的编程语言更加有吸引力,大都采用了英语,如前面所说的Ruby、Lua等等。
世界上还有不少非英语的编程语言,毕竟其他非英语的国家也有英语学习障碍,也在不断探索编程语言的本土化,就像国内广大网友希望也拥有中文编程语言一样,也拥有属于自己国家的编程语言。
但是编程语言本土化的尝试大都并不成功,而且在不断衰落,以下列举了一些其他语种对编程语言本土化尝试的案例,相信这些编程语言大家都没有听说过,甚至在中文媒体上连它们的名字你都搜索不到:
1、法语的SPIP(Système de Publication pour l'Internet)、Linotte、Le WLangage
2、日语的Dolittle、
3、意大利的Monicelli
4、德语的Teuton
5、俄语的РАПИРА
以上只是部分,就不一一列举了,当然还有中国的易语言,也就是说其他国家也都做过编程语言本土化的尝试。
而且不少国家为了拥有本土化的编程语言,也在追求多种形式,有的是出于教育目的,推出用于普及教学的编程语言;有的是自己创造了一个编程语言;当前更流行的是基于Python、C、C 、JavaScript、Forth、Rust等编程语言修改关键词进行本土化
这些本土化的编程语言,仍在持续运营的(编程语言也是需要运营的,比如更新、社区维护、教育普及等)已经越来越少,而且都不成气候,前景十分悲观。
中文编程语言不止易语言,以前也做过一些尝试,但是这些尝试现在基本上连最基础的资料都找不到了:
是否会出现有影响力的中文编程语言?从以上我们可以了解到,本土化的编程语言基本只能用于教育目的,而要广泛流行起来成为世界上有影响力的编程语言基本上没有可能了,如果有,那极大可能采用的是英语,而不是中文。
那如果我们只是追求这门中文编程语言在国内有影响力呢,毕竟中国人口那么多?如果存在这种可能,那创造这门编程语言的人会是谁?
从现有经验来看,编程语言的创造者主要分为程序员个体、大学里面的研究机构、专门的科研实验室内的工作小组,以及企业主导。也就是说如果你要继续追问为什么中国没有自己的编程语言,你应该去追问这些群体。
值得一提的是,其实国内也有不少程序员将一些流行的编程语言汉化过,但是都不成体系,也不推荐学习,这些都只是噱头,尽管听起来不靠谱甚至可笑,但是将流行编程语言汉化竟然是当前国际上最为流行的做法,可能真的创造一门非英语的编程语言已经不符合世界发展的大势了,更不要说想让它变得有影响力。