# 1 – 简介
Lua 是一门扩展式程序设计语言,被设计成支持通用过程式编程,并有相关数据描述设施。 同时对面向对象编程、函数式编程和数据驱动式编程也提供了良好的支持。 它作为一个强大、轻量的嵌入式脚本语言,可供任何需要的程序使用。 Lua 由 _clean C(标准 C 和 C++ 间共通的子集)_ 实现成一个库。
作为一门扩展式语言,Lua 没有 "main" 程序的概念: 它只能 _嵌入_ 一个宿主程序中工作, 该宿主程序被称为 _被嵌入程序_ 或者简称 _宿主_ 。 宿主程序可以调用函数执行一小段 Lua 代码,可以读写 Lua 变量,可以注册 C 函数让 Lua 代码调用。 依靠 C 函数,Lua 可以共享相同的语法框架来定制编程语言,从而适用不同的领域。 Lua 的官方发布版包含一个叫做 `lua` 的宿主程序示例, 它是一个利用 Lua 库实现的完整独立的 Lua 解释器,可用于交互式应用或批处理。
Lua 是一个自由软件,其使用许可证决定了它的使用过程无需任何担保。 本手册所描述的实现可以在 Lua 的官方网站 `www.lua.org` 找到。
与其它的许多参考手册一样,这份文档有些地方比较枯燥。 关于 Lua 背后的设计思想, 可以看看 Lua 网站上提供的技术论文。 至于用 Lua 编程的细节介绍, 请参阅 Roberto 的书,_Programming in Lua_。