虽然 Lua 被称为解释型语言,但是 Lua 总是在运行代码前先预先编译源码为中间代码。解释型语言的区分并不在于源码是否编译,而在于是否有能力执行动态生成的代码。正是由于dofile 这样的函数存在,才使得 Lua 能够被称为解释型语言。
这篇文章将介绍 Lua 的编译执行原理以及 Lua 的模块/包管理机制。
虽然 Lua 被称为解释型语言,但是 Lua 总是在运行代码前先预先编译源码为中间代码。解释型语言的区分并不在于源码是否编译,而在于是否有能力执行动态生成的代码。正是由于dofile 这样的函数存在,才使得 Lua 能够被称为解释型语言。
这篇文章将介绍 Lua 的编译执行原理以及 Lua 的模块/包管理机制。
这篇文章将介绍 Lua 中的数据结构,其实 Lua 只提供了 表
这唯一的数据结构,但是通过 表
可以实现数组、字典等数据结构。之后将介绍如何在 Lua 中实现数据结构的序列化和反序列化。
这篇文章首先将介绍 Lua 标准库中操作日期时间相关的接口,之后则将介绍 Lua 中的的位/字节操作相关的 API。
这篇文章将介绍 Lua 中的闭包,闭包特性使得我们可以在 Lua 中实现函数式编程。之后还将介绍 Lua 自己提供的模式匹配方法,这些模式匹配方法不同于一般的 Perl 正则表达式。
由于 Lua 强调可移植性和嵌入型,所以 Lua 本身并没有提供太多与外部交互的机制。在真实的 Lua 程序中,从图形、数据库到网络访问等大多数 I/O 操作,要么由宿主程序实现,要么通过不包括在发行版中的外部库实现。Lua 本身只提供了 ISO C 语言标准库支持的功能,即基本的文件操作。
这篇文章介绍 Lua 中的 I/O 机制,同时补充一些 Lua 编程的基础知识。
Lua 表是 Lua 中最重要的数据结构(也是唯一的数据结构),Lua 的全局变量、模块组织等功能都与 Lua 表相关,Lua 表很好地体现了 Lua 精简的设计思路。任何一门编程语言都会提供函数,以实现代码的模块化、抽象化,而 Lua 也不例外。这篇文章将学习 Lua 中的表和函数。
在 Lua 5.2 及之前版本,所有数值都以双精度浮点格式表示。从 Lua 5.3 开始,Lua 语言为数值提供了两种选择:
整型的引入是 Lua5.3 的一个重要标志。在精简 Lua 模式下(small lua),该模式使用 32 位整型和单精度浮点类型。
这篇文章将学习 Lua 的数值(number) 和字符串(string)类型。
Lua 语言诞生于巴西的里约热内卢天主教大学(Pontifical Catholic University of Rio de Janeiro,PUCRio)),其作者是 Roberto Ierusalimschy
、Waldemar Celes
、Luiz Henrique de Figueiredo
。Lua 在葡萄牙语中的含义是 月亮
。
这篇文章将介绍 Rust 中的一些高级特性,这些特性在一些特定的场景中非常有用,这些特性包括:
模式是 Rust 中一种用来匹配类型结构的特殊语法,将模式与 match 表达式或其他工具配合使用可以更好地控制程序流程。模式被用来与某个特定的值进行匹配。如果模式与值匹配成功,那么就可以在代码中使用这个值的某些部分。这篇文章将学习所有可以使用模式匹配的场景、不可失败模式与可失败模式之间的区别,以及代码中可能会出现的各种模式匹配语法。