LUA快速使用指南

这篇博客介绍了LUA,一个轻量级的可嵌入式脚本语言。Lua以其快速、可移植、可嵌入和小巧的特点受到欢迎,特别是在游戏开发领域。文章涵盖了Lua的安装、基本语法、数据类型、控制结构和文件操作,帮助读者快速掌握Lua的使用。
摘要由CSDN通过智能技术生成

这里写图片描述
Lua在葡萄牙语中是月亮的意思,是一个有效的轻量级的可嵌入式脚本语言。它支持面向对象和面向过程的编程方式。从1993年被开发出来至今已经有25岁的高龄了。老当益壮,不坠青云之志,Lua仍然非常地活跃,比如深度学习的开源框架Torch就使用Lua和C作为开发的主要语言。

曾经在游戏开发者杂志的编程工具分类获得2011年的Front Line Award奖项,Lua得到了很高的评价:Lua成为了一们非常流行的编程语言,在游戏领域尤其如此。部分原因是由于它的速度和易用性,开发者可以将Lua嵌入到游戏引擎中。同时,Lua还有很高的可扩展性。另外在源码文件以及运行所需的内存使用量方面都是相对较小。游戏开发者杂志对Lua进行了不遗余力的赞美,详细可以参看如下链接:

URL http://www.gamasutra.com/view/news/129084/Announcing_Game_Developer_magazines_2011_Front_Line_Award_winners.php

基本信息

项目 说明
官方网站 http://www.lua.org/
开源/闭源 开源
License类别 MIT License
代码管理地址 http://www.lua.org/ftp/
开发语言 C
更新频度 平均每年数次更新
提供者 Waldemar, Roberto, Luiz
支持平台 使用ANSI C开发的Lua可以支持任何能够运行ANSI C的平台,基本常见的OS都可以从源码进行编译和安装
当前版本 5.3.4(2017/01/12)

Lua的开发者

这里写图片描述

版本演进

这里写图片描述

功能特色

相较于其他脚本余元,Lua有显著的自身特色:

快速

官方号称Lua在性能方面有较好的名声,而其他编程语言也有强烈的愿望能够”as fast as Lua”, 据称在一些对标中Lua都在交互式的脚本语言中是最快的。

可移植

由于Lua使用了ANSI C的开发,而几乎所有的操作系统对ANSI C提供支持,所以Lua可以运行在Unix/Windows/IBM大型机/诸如Android,iOS,Symbian等移动设备上。

可嵌入

Lua提供简单而强大的API方便集成到其他语言中,可以使用其他语言写的库对Lua进行扩展,同时也可以使用其他语言和Lua一起对应用程序进行更好地扩展。Lua不仅仅支持C/C++,同时对Java/C#/Perl/Ruby/Smalltalk/Ada/Fortran/Erlang等进行结合使用。

强大且简单

在特性开发上Lua秉承所谓的meta-mechanisms的重要设计理念,通过这种方式实现了很多重要的功能,比如Lua虽然不是纯粹的面向对象语言,但是通过meta-mechanisms机制可以实现类和继承。

small

最新的5.3.4的tar包,压缩之后只有297K,而解压后也仅有1.1M。Lua的源码仅有24000行左右,在64位的Linux下,Lua的解释器和标准库也仅有几百K的大小。

免费

Lua采用了对商业非常友好的MIT License,可用于商业目的,你所需要的只是下载下来。

安装部署

在本文中使用源码编译的方式进行Lua的安装

事前准备:yum install -y gcc readline-devel

使用gcc是为了编译,而readline-devel则是因为在Lua的源码中使用了相关模块

[root@devops lua-5.3.4]# find . -type f |xargs grep readline.h
./src/lua.c:#include <readline/readline.h>
./src/lua.c:#include <readline/history.h>
[root@devops lua-5.3.4]# 

具体5.3.4的源码安装命令如下:

curl -R -O http://www.lua.org/ftp/lua-5.3.4.tar.gz
tar zxf lua-5.3.4.tar.gz
cd lua-5.3.4
make linux test

安装日志:

[root@devops ~]# curl -R -O http://www.lua.org/ftp/lua-5.3.4.tar.gz
...省略
[root@devops ~]# tar zxf lua-5.3.4.tar.gz
[root@devops ~]# cd lua-5.3.4
[root@devops lua-5.3.4]# make linux test
cd src && make linux
make[1]: Entering directory `/root/lua-5.3.4/src'
make all SYSCFLAGS="-DLUA_USE_LINUX" SYSLIBS="-Wl,-E -ldl -lreadline"
make[2]: Entering directory `/root/lua-5.3.4/src'
gcc -std=gnu99 -O2 -Wall -Wextra -DLUA_COMPAT_5_2 -DLUA_USE_LINUX    -c -o lapi.o lapi.c
gcc -std=gnu99 -O2 -Wall -Wextra -DLUA_COMPAT_5_2 -DLUA_USE_LINUX    -c -o lcode.o lcode.c
gcc -std=gnu99 -O2 -Wall -Wextra -DLUA_COMPAT_5_2 -DLUA_USE_LINUX    -c -o lctype.o lctype.c
gcc -std=gnu99 -O2 -Wall -Wextra -DLUA_COMPAT_5_2 -DLUA_USE_LINUX    -c -o ldebug.o ldebug.c
gcc -std=gnu99 -O2 -Wall -Wextra -DLUA_COMPAT_5_2 -DLUA_USE_LINUX    -c -o ldo.o ldo.c
gcc -std=gnu99 -O2 -Wall -Wextra -DLUA_COMPAT_5_2 -DLUA_USE_LINUX    -c -o ldump.o ldump.c
gcc -std=gnu99 -O2 -Wall -Wextra -DLUA_COMPAT_5_2 -DLUA_USE_LINUX    -c -o lfunc.o lfu
  • 14
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值