Lua 与 Ruby

lua-users home
wiki

简介

Ruby [1] 是一种动态的、面向对象的语言,类似于 Python。

相似之处

两者都是相对较新的、可移植的、轻量级的、高级语言。

差异

LuaVersusPython 中所述,(+) 表示优点,(-) 表示缺点,(?) 表示未定。

Ruby

(?)Ruby 是完全面向对象的。在 Ruby 中,一切都是对象。

(+)Ruby 拥有庞大的用户社区,因此拥有大量且多样的库和文档。

(?)一个 Ruby Web 应用程序框架 Rails 近年来获得了广泛的知名度。

(?)丰富的语法,使用了许多非字母数字字符。

(-)Ruby 不易嵌入。但是,MRuby 非常容易嵌入。

Lua

(?)Lua 拥有元机制来实现面向对象。但是它保留了依赖其他技术的灵活性。

(+)Lua 文档非常清晰简洁。

(+)Lua 有两个 Web 应用程序框架,Kepler 和 Aranha。两者都秉承了 Lua 的精神:轻量级、可扩展和可移植。

(?)“我从 Ruby 转向 Lua 的主要原因之一是 Lua 已经拥有一个非常好的 VM,它允许 Lua 程序被编译,并且执行速度比 Ruby 快得多(大多数情况下快两倍)。”这可能会随着即将推出的“MRuby”而改变。MRuby 是一个针对小型设备嵌入的 Ruby 子集,拥有自己的 VM。开发版本自 2012 年 5 月起在 Github 上公开发布。2013 年的评论:自 ruby 1.9 以来,这种情况已经改变,现在 ruby 也进行字节编译,基准测试与 lua 相似。虽然 LuaJIT 在与 ruby、python 相比时确实具有优势。2014 年的评论:什么基准测试?没有实质依据的断言毫无用处。此外,说 LuaJIT 在性能方面比 Ruby 和 Python 具有“优势”是一个相当大的轻描淡写。

另请参阅


RecentChanges · preferences
edit · history
最后编辑于 2014 年 11 月 5 日下午 8:40 GMT (差异)