文章图片
文章图片
文章图片
如果看一看主流的编程语言 , 都是由发达国家的程序员创造的 。
C、C++、C#、Java、JavaScript、Go、Rust、PHP诞生于美国;Python诞生于欧洲 。
但是Lua是个例外 , 它出生在遥远南半球、桑巴足球的国度:巴西 。
巴西是个发展中国家 , 经济水平不高 , IT界也不发达 , 但是却创造了一个世界流行的编程语言 , 它到底是怎么做到的?
1编程界有个笑话:骆驼是委员会设计的马 。
笑话讽刺是由委员会设计出的编程语言都不怎么样 , 比如Algol 68 PL/I, Ada都没有达到最初的期望 。
Lua也是一个委员会设计的 , 但是 , 这个委员会非常小 , 只有三个人 , 他们都是里约热内卢天主教大学的同事:Roberto Ierusalimschy Luiz Henrique de Figueiredo 和Waldemar Celes 。
【lua|巴西的编程语言都占领全世界了,中国怎么就不行呢?】
里约热内卢天主教大学和巴西石油公司有一些合作项目 , 需要一个领域特定语言(DSL)来处理数据输入和数据配置 。
三人团队相继创造了DEL SOL这两门语言 , 并且在石油公司的应用中取得了成功 。
随着需求的越来越复杂 , 需要一门真正的脚本语言 , 可以赋值 , 有逻辑控制 , 函数 , 可以嵌入到巴西石油公司的应用中使用 。
什么叫嵌入到别的应用中呢?
举个例子 , 你用C语言写了一个应用 , 其中有一段复杂的逻辑 , 是计算员工工资的 , 但是老板希望在应用发布之后还可以修改工资 , 那么这段薪水计算逻辑就可以用Lua语言来写 , 然后让C语言应用去调用 。
每次老板想改变工资计算逻辑 , 你新写一段Lua脚本 , 发布一下就可以了 , 整个应用不需要改动 。
这样是不是挺爽?
当时市面上用作脚本编程有这些:
Perl :过于复杂 , 不容易嵌入到别的应用中
Python :1.0版还没有发布 , 也不容易嵌入
Tcl:支持嵌入 , 但是语法对于非程序员太复杂了
于是三人决定 , 干脆创造一个新的编程语言吧!
1993年 , Lua正式诞生!
Lua短小精悍 , 直到Lua5.3也只有不到1万行C代码!包含了I/O功能的二进制包也只有200多K 。 (顺便说一句 , 想深入学习C语言和语言设计的 , Lua是个极好的范例)
它移植性很好 , 有着清晰而简单的语法 , 是一个非常优秀的、可扩展的嵌入式语言 。
Lua虽然在巴西石油公司用得不错 , 但是外边就默默无闻了 。
在巴西本地 , 很少有程序员对Lua感兴趣 , 无论是偏见还是实用主义 , 大家都倾向于向外看 , 寻求世界上最流行的技术来解决问题 。
这是不是和现在的中国很像?
Lua这个巴西本地诞生的编程语言未来在哪里呢?
2Lua团队做出了一个“艰难”的决定 , 暂时“切断”和本地的联系 , 走向全球 。
他们说:“Lua 必须在国外取得成功才能在国内获得认可 。 ”
他们决定用英语来编写Lua的文档 , 而不是巴西的官方语言葡萄牙语 。
就连《Programming in Lua》这样的书 , 也只有英文版 。
1996年 , Lua团队开始向IT界最核心的区域——美国——进发 , 他们先后在美国的《Software: Practice & Experience》杂志和《Dr. Dobb’s Journal》杂志发表文章 , 介绍Lua这门可扩展的嵌入式语言 。
- iphone13|iPhone 13只有4GB运存真的够用吗?过来人说出心里话
- switch|Switch玩家的福音,CFORCE OLED 1080P便携屏完美搭配!
- 微波炉|曾红极一时的微波炉,为什么如今“存在感”几乎为零?淘汰它吗?
- vivo x|vivo X90的渲染图,一些相关的配置也被扒
- 音箱|音乐发烧友的好物分享,你一定要试试JBL GO3音箱
- iqoo|关于iQOO10 Pro的真面目,严格来说是道听途说
- 拼多多|程序员年龄增大后的职业出路是什么?德国和我国的差距是什么?
- iOS|iPhoneSE2最适合养老的版本是iOS15.6?续航明显提升,能养老
- 红米手机|618最值得入手的MIUI生态笔记本,轻薄本到游戏本,你更喜欢哪个?
- MySQL|华为鸿蒙使用的AOSP代码中,50%+由谷歌贡献,下一步是去谷歌化