Programming in Lua
i
Copyright ® 2005, Roberto Ierusalimschy & www.luachina.net
译
译
序
序
“袁承志知道若再谦逊,那就是瞧人不起,展开五行拳,发拳当胸打去。荣彩和旁
观三人本来都以为他武功有独到之秘,哪知使出来的竟是武林中最寻常不过的五行拳。
敌对三人登时意存轻视,温青脸上不自禁露出失望的神色。
“荣彩心中暗喜,双拳如风,连抢三下攻势,满拟自己的大力魔爪手江南独步,三
四招之间就可破去对方五行拳,那知袁承志轻描淡写的一一化解。再拆数招,荣彩暗暗
吃惊,原来对方所使虽是极寻常的拳术,但每一招均是含劲不吐,意在拳先,举手抬足
之间隐含极浑厚的内力。”
——金庸《碧血剑》
编程语言之于程序员,若武功招式之于习武之人,招式虽重要,却更在于使用之人。
胜者之道,武功只行于表,高手用剑,片草只叶亦威力无穷。
当今武林,派别林立,语言繁杂,林林总总不计其数。主流文化的C/C++、Java、
C#、VB
1
;偏安一隅的Fortran;动态语言中的Perl、Tcl、Ruby、Forth、Python,以及本
书介绍的Lua;……,等等等等。再加上世界上那些不知道躲在哪的旮旯的奇奇怪怪的
hacker捣鼓出来的异想天开的语言,要想各类语言样样精通,不异于痴人说梦。不信可
欣赏一下BrainFuck语言
2
的Hello World程序,语言本身依如其名。-☺-
>+++++++++[<++++++++>-]<.>+++++++[<++++>-]<+.+++++++..+++.[
-]>++++++++[<++++>-]<.#>+++++++++++[<+++++>-]<.>++++++++[<+
++>-]<.+++.------.--------.[-]>++++++++[<++++>-]<+.[-]+++++
+++++.
虽说语言的威力依使用者本身的修为高低而定,但不同语言本身的设计又有不同。
若让用 Java 写写操作系统内核、Perl 写写驱动程序、C/C++写写 web 应用,都无异于舍
近求远,好刀只用上了刀背。
Lua 本身是以简单优雅为本,着眼于处理那些 C 不擅长的任务。借助 C/C++为其扩
展,Lua 可闪现无穷魅力。Lua 本身完全遵循 ANSI C 而写成,只要有 C 编译器的地方,
Lua 便可发挥她的力量。Lua 不需要追求 Python 那样的大而全的库,太多累赘,反而破
坏了她的优美。
语言的优美,来自于使用者自己的感悟。Lua 的优雅,也只有使用后才会明白。
1
http://www.contextfree.net/wangyg/b/tech_his/basic_history.html,VB虽非正统之Basic,也不能算纯粹的
语言,但其使用广泛,姑且忝列其中吧。
2
http://www.muppetlabs.com/~breadbox/bf/,有趣的Brain Fuck语言。
评论0
最新资源