Lua是否主要基于完善的编程语言思想?
Lua在可embedded语言的空间中占有一席之地。 Lua是从devise者那里devise出新想法的主要思想,还是Lua主要是一个行之有效的想法的良好组合?
Lua与其他PL的特性和特性的比较是特别合适的。
这是一个非常有趣的问题。 我的日常工作是学习编程语言,而Lua会回报仔细研究。 我会说,其他语言很less(可能是图标和CLU)。 请注意,这是整个语言 ,而不是个人的特点,这使得Lua值得学习。
这是执行者们有意思的新思想的结果,还是良好执行思想的结果?
都。 对于这个问题的答案,最好的来源是Lua的演变,这个演变出现在第三届ACM编程语言史研讨会上。 但是我会添加一些评论。
-
使用Lua表作为唯一可变的,非primefacestypes的数据是由Lua团队发明的。 他们受到了CLU发展的启发,我相信他们也意识到了Awk和Icon的类似工作,但这个程度的提升是Lua团队的一个重要贡献。
表也有一个非常有效的实现,这是由Lua团队发明的。
-
Lua的function特征与Scheme有相同的语义,但是Lua具有唯一的一级函数实现,我认为他们应该在“函数式编程 ” 杂志上发表。
-
embedded式API多年来一直在大大改善。 其主要特点是用户定义的抽象types可以充分参与embedded。 例如,这是使Lua API优于Tcl API的属性。 多年来,Lua API经历了大量的改进,包括自2.5版本首次发布以来。 Lua的devise师在这里值得信赖。
-
垃圾收集技术是标准的。
-
Lua 协程代表了一些非常古老的想法。 在ACM 编程语言和系统交易中,这个新的观点被认为是值得一读的,所以我再次认为Lua团队获得了原创性的荣誉。
-
Lua metatables与Common Lisp元对象协议有关。
我认为Lua的成功来源于Lua团队的独特优势:
-
如果你阅读HOPL论文 ,你会发现Lua团队很清楚编程语言的许多发展,并能够从最好的想法中进行select。 大多数stream行的脚本语言的devise者都是业余爱好者,而且知之甚less。
-
Lua的devise非常出色,所以它们的搭配非常好,功率重量比非常好。 这是随着时间的推移而进行的大量改进的结果,PUC-Rio愿意为Lua团队进行语言devise和实施,而不是去研究大量的论文。 这项工作在北美大学是无法完成的。
-
Lua的devise非常出色。 执行情况非常好。 这是伟大的工程师所做的部分伟大的工作,部分是在15年内不断修改devise的机会。
最后,请读者不要低估select和完善既定思路,形成一个整体的难度。 这是非常困难的工作,很less被认为是应该的。
Lua支持函数式编程,它基于基于Prototype的编程风格,灵活而强大。
海事组织这是一个有趣的语言。
如果你想阅读关于原型inheritance的一些想法 ,我build议你
阅读Steve Yegge的“通用devise模式”博客文章。
Lua很小,总的代码只有ANSI C中的几万行(Python有十多倍的代码行)。
Lua非常稳定,或者说现在的语言是固定的。
Lua有很好的工程。 它的代码很容易阅读和破解。 (也因为小)
它的许可证允许你做任何你想要的。
Python中说,在Lua中编写C扩展比其他语言更容易。
有一个Lambda最终的故事, 小是美的:Lua的devise ,讨论Robert Ierusalimschy最近在斯坦福同名的演讲。 目前的讨论集中在以表格作为唯一的容器数据结构的优点; 到目前为止,谈话的其他部分几乎没有讲过,涉及到Lua的C接口。
我觉得这是因为Lua比较简单务实。 它不会尝试成为构build下一个操作系统的语言,孤岛危机3或SAP克隆,但是它做的很好,即充当脚本语言。