1.什么是Lua

Lua是一种强大,高效,轻量级,可嵌入的脚本语言。它支持过程编程,面向对象编程,函数编程,数据驱动编程和数据描述。

Lua结合了简单的过程语法和强大的基于关联数组和可扩展语义的数据描述结构。Lua是动态类型的。通过使用基于注册表的虚拟机解释字节码来运行,并通过增量垃圾收集实现自动内存管理,这使得Lua非常适合适配,编程和快速原型设计。

2.Lua怎么来的

Lua的设计、实现和维护是由里约热内卢天主教大学的puco-Rio团队完成。Lua出生并成长于Tecgraf,前身是PUC-Rio的计算图形组。

Lua现在位于LabLua,这是PUC-Rio的计算机科学系的一个实验室。

3.为什么取名Lua

Lua(读作LOO-ah)在葡萄牙语中的意思是月亮。因此它既不是首字母的缩写也不是缩写词而是一个名词。更具体的说,Lua是一个名字,月亮的名字和语言的名字。和大多数名字一样,它应该是小写字母加上首字母”Lua“。请不要把它写成”LUA”,那样即丑又让人困惑,因为这样它就变成一个缩略词,不同的人有不同的理解,因此,请把"Lua"写正确。

4.为什么选择Lua

(1)Lua是一种经过验证的,健壮的语言。

Lua已经用于很多工业应用(如Adobe的Photoshop Lightroom),重点是嵌入式系统(如巴西数字电视的Ginga的中间件)和游戏(如魔兽世界和愤怒的小鸟)。Lua目前是游戏中领先的脚本语言,Lua 有一本可靠的参考手册,有几本关于它的书。自从1993年创建以来,已经发布多个版本并在实际应用程序中使用。Lua在2007年的第三接 ACMSIGPLANH编程语言历史会议Hopllll上做了专题介绍。Lua获得了《游戏开发者》杂志2011年颁发的前线奖。

(2)Lua是快速的

Lua的表现是名副其实的。声称”和Lua一样快“是其他脚本语言的一个愿望。几个基础准则表明,Lua是解释脚本语言领域最快的语言。Lua不仅在微调的基准程序中很快,在现实生活中也很快。大部分大型应用程序都是 Lua编写的。

如果你想要更快的速度,请尝试 luajit,它是使用实时编译器的Lua的独立实现。

(3)Lua是便携的

Lua分布在一个小包中,并在所有具有标准C编译器的的平台上构建开箱即用的版本。Lua运行在各种Unix和Windows上,运行在移动设备上(运行Android,IOS,BREW,Symbian,Windows Phone),运行在嵌入式微处理器上(如ARM和Rabbit等应用程序),运行在IBM大型机上,等等。

由于特定的原因,Lua对于受限设备也是一个不错的选择,请阅读MikePall的总结,参见Timmy Muller创作的海报。

(4)Lua可嵌入

Lua是一个快速的语言引擎,占用空间小,可以很容易地嵌入到应用程序中。Lua只有一个简单且有良好文档记录的API,它允许与用其他语言编写的代码进行强集成。使用其他语言编写的库很容易扩展Lua。使用Lua还可以很容易地扩展用其他语言编写的程序。Lua 不仅已被用于扩展在C和C++中编写的程序,而且还用于Java,c# ,Smalltalk,Fortran., Ada, Erlang,甚至在其他脚本语言中,如Perl和Ruby。

(5)Lua很强大(但很简单)

Lua设计中一个基本概念是提供实现特性的元机制,而不是直接在语言中提供一系列特性。例如Lua不是纯面向对象的语言,但它确实为实现类和继承提供了元机制。Lua的元机制带来了概念的经济性,并保持了语言的小型化,同时允许以非常规的方式扩展语义。

(6)Lua是轻量级的

向应用程序添加Lua不会让其膨胀。Lua5.3.5的tarball包含源代码和文档,压缩后297k,解压缩后1.2M。源代码包含大约24000行c。在64位Linux下,使用所有标准Lua库构建的Lua解释器需要247K,而Lua库需要421K。

(7)Lua是免费的

Lua是免费的开源软件,以非常自由的许可证(著名的MIT许可证)发布。它可以适用于任何目的,包括商业目的,绝对不需要费用。只要下载并使用它。

lua游戏脚本自动打怪_了解Lua(官方文档翻译)相关推荐

  1. lua游戏脚本实例源码_Redis Lua脚本中学教程(上)

    失踪人口回来啦! 有读者问我为什么这么久都没有出Redis Lua中学教程,表示村头厕所已经好久没有纸了.其实我早就要写这篇中学教程了,奈何最近太忙了,就一拖再拖,直到今天我终于又开始动笔了.忘记Lu ...

  2. lua游戏脚本实例源码_Lua与其他宿主语言交互原理剖析

    Lua与其他宿主语言交互原理剖析 题外话:今天周末,刚好在家有时间就把我这次项目组内部分享的文章贴出来,分享给大家,同时也方便以后自己翻阅. 一. Lua简介 目标:Lua语言本身是用C语言来编写开发 ...

  3. lua 给userdata设置元表_提高Lua语言开发效率的简单方法

    概述 首先,lua是一门高效的(efficient).轻量级(lightweight)的嵌入式脚本语言(embeddable scripting language),这是它的官方网站的标语. 其次,l ...

  4. lua和unity如何交互_【Lua与C#交互④】如何让Lua打印到Unity控制台

    今天要讲的如何让Lua打印到Unity控制台? 相信用过tolua或者xlua的人都知道,在lua脚本里面只要写一行print就能打印到unity控制台效果类似Debug.Log. 如下: print ...

  5. lua游戏脚本实例源码_在nginx中使用强大的lua实现定向需求

    前言 Lua 是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放, 其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能.其设计目的是为了嵌入应用程序中,从而为应用程序提供 ...

  6. lua游戏脚本实例源码_Lua脚本引擎教程(六):饥荒Lua脚本系统

    目录 饥荒的Lua逻辑层架构 迁移到Unity中使用Lua Lua擅长什么? 饥荒的Lua逻辑层架构 饥荒的整个逻辑层都是用Lua写的,并且把代码和艺术资产都开放给玩家,主要是供玩家中的mod制作者学 ...

  7. lua游戏脚本开发之叉叉集成开发环境使用教程与配置【如何连接模拟器】

    第一步:开发助手+叉叉集成环境下载安装:http://dev.xxzhushou.cn/download.html 第二步:安卓模拟器安装[官方推荐雷电---但是海马也不错] 雷电模拟器配置: 海马玩 ...

  8. shell脚本自动回车_干货分享:Linux shell脚本分享!!快收藏起来吧

    Linux shell 脚本分享 Shell 是一个命令解释器,处于内核和用户之间,负责把用户的指令传递给内核并且把执行结果回显给用户,Shell 它是一个用 C 语言编写的程序,它是用户使用 Lin ...

  9. jstack 脚本 自动日志_在 Linux 中使用 Bash 脚本删除早于 “X” 天的文件/文件夹...

    该脚本可防止来自 监控工具 的警报,因为我们会在填满磁盘空间之前删除旧的日志文件. -- Magesh Maruthamuthu(作者) 磁盘使用率 监控工具能够在达到给定阈值时提醒我们.但它们无法自 ...

  10. jstack 脚本 自动日志_运维老司机又翻车, 居然没用过日志切割Logrotate

    运维老司机又翻车, 居然没用过日志切割Logrotate 作为一个运维老司机, 这次又翻车了.只能说明一个原因, 就是菜, 所有才要多学习. 说起日志切割, 自己可以说是溜的一批.基本的套路就是在cr ...

最新文章

  1. 二维数组,锯齿数组和集合 C# 一维数组、二维数组(矩形数组)、交错数组(锯齿数组)的使用 C# 数组、多维数组(矩形数组)、锯齿数组(交叉数组)...
  2. 通过COS上传文件至腾讯云
  3. 普通java跑到linux上,JAVA在linux下open too many files
  4. 浅谈C++类(6)--复制构造函数
  5. matlab粒子图像测速工具,程序 PIVlab - 时间分辨粒子图像测速(PIV)工具: 一 联合开发网 - pudn.com...
  6. 去哪儿-21-debuggiing-testing
  7. arcgis api for javascript中使用proxy.jsp
  8. Python保存任意长度的matplotlib动画为GIF动图
  9. HDU 1212 大整数的取模运算
  10. mysql按照音序排列_如何按音序排列
  11. 基于 SpringBoot + layui 的健身房管理系统
  12. 宝塔面板服务器ip地址修改_宝塔,云帮手服务器控制面板,你用的哪一款?
  13. 计算机标签高低温标准,液晶显示屏高温高湿测试判断标准
  14. Python游戏概率补偿算法-马尔科夫链
  15. discuz X3.2最新20141225安装包uc_server不能登陆问题(包括升级后)
  16. Setup failed. At least windows8.1 or windows serve2012 are reguired to install python 3.10.1(64-bit)
  17. 【C语言进阶】指针(进阶2)
  18. excel查找空值快捷键_excel定位选取:再谈快捷键Ctrl+G的妙用
  19. 〖产品思维训练白宝书 - 产品思维认知篇⑦〗- 聊一聊 产品经理 的工作内容与职责划分
  20. 用python制作贺卡_使用Python创作自己的圣诞节动图贺卡,制作简单即刻生成

热门文章

  1. 各种不同服务器301重定向设置代码大全
  2. HttpClient的简单使用--HttpGET和HttpPost
  3. 2019年初,我收到人生中的第一笔稿费
  4. tp5.0 根据经纬度 获取附近信息_Redis怎么实现查找附近的人之数据类型Geospatial...
  5. ThinkPhp 使用 PHP_XLSXWriter 代替 PHPExcel 百万级数据单次导出
  6. Windows下phpstudy nginx.conf 配置PHP项目
  7. 解决Layui表格需表头固定悬浮的问题
  8. PHPStorm 设置背景图片
  9. mapbox symbols 层级设置_mapboxgl实现带箭头轨迹线的代码
  10. php中的get_called_class()方法