Lua 教程

lua

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

Lua 是巴西里约热内卢天主教大学(Pontifical Catholic University of Rio de Janeiro)里的一个研究小组于 1993 年开发的,该小组成员有:Roberto Ierusalimschy、Waldemar Celes 和 Luiz Henrique de Figueiredo。


设计目的

其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。


Lua 特性

  • 轻量级: 它用标准C语言编写并以源代码形式开放,编译后仅仅一百余K,可以很方便的嵌入别的程序里。

  • 可扩展: Lua提供了非常易于使用的扩展接口和机制:由宿主语言(通常是C或C++)提供这些功能,Lua可以使用它们,就像是本来就内置的功能一样。

  • 其它特性:

    • 支持面向过程(procedure-oriented)编程和函数式编程(functional programming);

    • 自动内存管理;只提供了一种通用类型的表(table),用它可以实现数组,哈希表,集合,对象;

    • 语言内置模式匹配;闭包(closure);函数也可以看做一个值;提供多线程(协同进程,并非操作系统所支持的线程)支持;

    • 通过闭包和table可以很方便地支持面向对象编程所需要的一些关键机制,比如数据抽象,虚函数,继承和重载等。


Lua 应用场景

  • 游戏开发

  • 独立应用脚本

  • Web 应用脚本

  • 扩展和数据库插件如:MySQL Proxy 和 MySQL WorkBench

  • 安全系统,如入侵检测系统


第一个 Lua 程序

接下来我们使用 Lua 来输出"Hello World!"

print("Hello World!")

运行后,会在屏幕上显示 Hello, world!。

推荐阅读:
mysql5.7开启sql日志的配置   阅读:9435简单的DOS攻击之死亡之ping详解   阅读:58238网站局部小图片优化-base64编码图片   阅读:14656javascript点击复制内容   阅读:7030php打印三角形   阅读:10472最简单的Banner轮播左右切换效果代码及实现思路(附带源码)   阅读:32265php设置cookie为HttpOnly防止XSS攻击   阅读:12966HTTP 1.1 协议详解   阅读:12498封装php redis缓存操作类   阅读:9276csv文件一键导入数据到mysql数据库   阅读:6889程序员找工作三要素(必看)   阅读:5781爱编程,也爱健康   阅读:4453centos 7 修改系统屏幕分辨率   阅读:45891PHP 鸟哥:我也曾经是“不适合”编程的人   阅读:14941linux rarcrack破解rar、zip和7z压缩包简单密码的工具   阅读:17726php设置cookie为HttpOnly防止XSS攻击   阅读:12966比phpexcel还要简单的excel CSV 一键导入数据到数据库   阅读:5504mysql的四种索引类型   阅读:22990php swoole搭建简单的聊天室   阅读:4340解决 nginx 413 request entity too large   阅读:4593linux rarcrack破解rar、zip和7z压缩包简单密码的工具   阅读:17726移动端js触摸touch详解(附带案例源码)   阅读:17035封装php redis缓存操作类   阅读:9276比phpexcel还要简单的excel CSV 一键导入数据到数据库   阅读:5504php swoole搭建简单的聊天室   阅读:4340shell脚本批量删除几天前的文件   阅读:10306爱编程,也爱健康   阅读:4453mysql数据一键导出到csv文件   阅读:5813phpexcel 超简单从excel表格一键导入数据到数据库教程   阅读:12416php冒泡排序法   阅读:14623javascript对cookie操作详细代码函数   阅读:5422mysql数据一键导出到csv文件   阅读:5813php+redis实现消息队列   阅读:15131给 centos 7 安装桌面环境   阅读:17087Nginx 配置文件详解   阅读:4945php打印九九加法表   阅读:10737php swoole搭建简单的聊天室   阅读:4340关于PHP程序员技术职业生涯规划   阅读:3020centos 7.2 添加php7 的 php-fpm 开机启动   阅读:24933小米手机端商城rem适配原理   阅读:6844php+redis实现消息队列   阅读:15131mysql的四种索引类型   阅读:22990html5 离线缓存的使用   阅读:4459crontab+shell脚本实现定时备份mysql数据库   阅读:7832centos 7搭建zabbix3.4   阅读:6691HTTP 1.1 协议详解   阅读:12498一键分享到QQ空间、QQ好友、新浪微博、微信代码   阅读:131446栈和堆的区别   阅读:5141centos7中颁发CA证书并开启web https   阅读:8112mysql共享锁和排他锁详解   阅读:7556