《Lua 5.0 参考手册》.doc

  1. 1、本文档共81页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《Lua 5.0 参考手册》

Lua 5.0 参考手册 作者: Roberto Ierusalimschy, Luiz Henrique de Figueiredo, Waldemar Celes Copyright ? 2003 Tecgraf, PUC-Rio. All rights reserved. 译者:ShiningRay Nicholas @ NirvanaStudio 1 - 绪论 Lua是一种为支持有数据描述机制的一般过程式编程语言而设计的扩展编程语言。它同样可以对面向对象语言、函数式程序设计(Functional Programming,如Lisp)以及数据驱动编程(data-driven programming)提供很好的支持。它的目标是被用作一种强大的、轻型的配置语言。Lua目前已经被实现为一个扩展库,是用clean C (ANSI C/C++的一个通用子集)编写的。 作为一个扩展语言,Lua没有Main函数的概念:它仅仅是嵌入一个宿主程序进行工作,可以称之为 嵌入式编程 或者简单的说是 宿主编程。这个宿主程序可以调用函数来执行Lua的代码片断,可以设置和读取Lua的变量,可以注册C函数让Lua代码调用。Lua的能力可以扩展到更大范围,在不同的领域内,这样就在同样的语法框架下创建了你自定义的编程语言。 Lua的发行版包括一个独立的嵌入式程序,lua,他使用Lua的扩展库来提供一个完全的Lua解释器。 Lua是自由软件,通常不提供任何担保,如它的版权说明中叙述的那样。 手册中描述的实现在Lua的官方网站可以找到,。 如果需要知道Lua设计背后的一些决定和讨论,可以参考以下论文,它们都可以在Lua的网站上找到。 R.?Ierusalimschy, L.?H.?de Figueiredo, and W.?Celes. Lua---an extensible extension language. Software: Practice Experience 26 #6 (1996) 635-652. L.?H.?de Figueiredo, R.?Ierusalimschy, and W.?Celes. The design and implementation of a language for extending applications. Proceedings of XXI Brazilian Seminar on Software and Hardware (1994) 273-283. L.?H.?de Figueiredo, R.?Ierusalimschy, and W.?Celes. Lua: an extensible embedded language. Dr. Dobbs Journal 21 #12 (Dec 1996) 26-33. R.?Ierusalimschy, L.?H.?de Figueiredo, and W.?Celes. The evolution of an extension language: a history of Lua, Proceedings of V Brazilian Symposium on Programming Languages (2001) B-14-B-28. Lua在葡萄牙语中的意思是“月亮”,发音是 LOO-ah。 2 - 语言 这一章将描述Lua的词法、语法和语义结构。换句话说,这一章会讲什么标记是合法的,他们是如何组合的,以及他们的组合是什么含义。 语言结构会使用常用的扩展BNF范式来解释,如{a}?表示0或多个a, [a]?表示a是可选的(0个或1个)。非终端字体(不能显示的)用 斜体表示,关键字是粗体,其他终端符号用typewriter(等宽)字体,并用单引号引出。 2.1 - 词法约定 Lua中的标识符(Identifiers)可以是任意的数字、字符和下划线“_”,但不能以数字开头。这条规则符合大多数编程语言中的标识符的定义。(字符的具体定义要根据系统的地区设置:任何区域设置可以认同的字母表中的字母都可以用在标识符中。) 下面的关键字(keywords)为保留关键字不可以作为标识符出现: and break do else elseif end false for function if in local nil not or repeat return then true until while Lu

文档评论(0)

weizhuidaomengx + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档