写点什么

Lua 5.3 正式版发布,支持整数、位操作和 UTF-8

  • 2015-01-16
  • 本文字数:989 字

    阅读完需:约 3 分钟

Lua 是一个基于 MIT 开源协议、小巧、动态类型的可嵌入式脚本语言, 该语言的设计目的是为了嵌入其他应用程序中并提供灵活的扩展和定制功能。在经过 4 个 RC 版本后,Lua 终于迎来了 5.3 正式版, 该版本主要实现了对整数、位操作、UTF-8 的支持以及打包和解包的功能。另外,Lua 5.3 还在语言、功能库、C 语言相关 API 等方面带来了如下改进:

1、 语言方面

Lua 的基本类型 userdata 能够被赋予任何 Lua 支持的值;新增整数除法;为一些元方法新增了更加灵活的规则。

2、 功能库方面

改进了迭代器 ipairs 和 table 库对元方法的支持;为 string.dump 增加了截断选项;为 table 库新增了元方法;新增 table.move、string.pack、string.unpack、string.packsize 等函数。

3、 C 语言相关 API 方面

增加了访问 C 语言中的 continuation 函数的 API;lua_gettable 和类型函数能够返回结果值的类型;为 lua_dump 增加了截断选项;新增了 lua_geti、lua_seti、lua_isyieldable、lua_numbertointeger、lua_rotate、lua_stringtonumber 等函数。

4、 独立解释器方面

Lua 的解释器可以用作计算器,且无需前缀‘=’;所有的代码都已支持参数列表。

Lua 5.3 正式版现已提供下载,更多有关该版本的信息参见官方发布的 ChangeLog 。另外,Lua 最著名的案例是暴雪公司在其网络游戏《魔兽世界》中的应用,目前非常流行的手游《愤怒的小鸟》也是用 Lua 编写的。

Lua 5.3 正式版发布后, Hacker News 上就有了相关讨论。用户 sitkack 提出了 Lua 的两个第三方 UTF-8 lib 库: luautf8 utf8.lua ;用户 justincormack 认为 Lua 对整数的支持是一个巨大的改进。

用户 fit2rule 评论到:

这真是一个好消息,自己一直期待着将 Lua 应用到移动平台 MOAI的最新客户端中,但是 Lua 对 UTF-8 支持的缺失一直影响着项目的进展,Lua 5.3 对 UTF-8 的支持意味着其功能更加强大和完整。

Reddit 上也有了相关评论,用户 ladna 认为:

Lua 5.3 实现对整数、UTF-8 和位操作的支持是一个巨大的改进。

用户 feydius 评论到:

真是太好了,Lua 5.3 对 64 位整数的默认支持和对位操作的支持(5.3 前是通过分割函数来实现)真是一个巨大的改进。垃圾收集器的进展现在是什么情况了?是否已经能够使用了。


感谢郭蕾对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2015-01-16 00:3613527
用户头像

发布了 92 篇内容, 共 44.9 次阅读, 收获喜欢 5 次。

关注

评论

发布
暂无评论
发现更多内容

如何购买国内大带宽云服务器

景博

孤注一掷——基于文心Ernie-3.0大模型的影评情感分析

百度开发者中心

人工智能 深度学习 文心大模型

IIoT Advancement: Wally's QCN9024 Card Introduces New Mechanism for Real-time Monitoring on IPQ6018 and IPQ8072 Platforms

wallyslilly

ipq6018 QCN9074 IPQ8072

大白话70个你必须知道的AI重要概念(一)

FinClip

30万奖金!开放原子开源大赛“云原生数据缓存性能挑战赛” 等你来挑战!

新消费日报

多模态大模型时代下的文档图像智能分析与处理

百度开发者中心

人工智能 图像识别 大模型

HL Mando宣布与亚马逊网络服务合作

财见

前端开发学习与发展建议,错过很可惜

伤感汤姆布利柏

EVE-NG初次启动及WEB客户端访问

小魏写代码

从0开始构建交互式数字人!

青否数字人

数字人

帕特·基辛格:AI PC是个人电脑历史的“寒武纪”时刻

E科讯

企业数字化转型的七大误区

天津汇柏科技有限公司

数字化转型

青否交互式数字人系统开放!

青否数字人

异步编程利器:CompletableFuture深度解析

Java随想录

Java 多线程 并发

clickhouse 优化实践,万级别QPS数据毫秒写入和亿级别数据秒级返回 | 京东云技术团队

京东科技开发者

如何防止数字人直播封号问题?

青否数字人

数字人

35万奖金!开放原子开源大赛openInula前端框架生态与AI创新挑战赛启动报名!

openInula

开源 AI 前端 前端框架 生态

【标准解读】物联网安全的系统回顾

华为云开发者联盟

后端 物联网 华为云 华为云开发者联盟

听6位专家畅谈AI大模型落地实践:场景和人才是关键

华为云开发者联盟

人工智能 华为云 大模型 华为云开发者联盟 DTSE Tech Talk

【第七在线】现代时尚:解锁服装企业商品企划的创新之路

第七在线

自动化集成有哪些典型应用场景?

RestCloud

零代码 APPlink 自动化集成

软件测试/测试开发/全日制/测试管理丨ORM 价值与体系

测试人

缓存之美——如何选择合适的本地缓存?

京东科技开发者

软件测试开发/全日制/测试管理丨Web应用框架Flask优势与特点

测试人

软件测试

通义千问Qwen-72B-Chat基于PAI的低代码微调部署实践

阿里云大数据AI技术

每日一题:LeetCode-24. 两两交换链表中的节点

半亩房顶

Go 面试 算法 链表 LeetCode

如何上传苹果ipa安装包?

推荐几个好用的程序员效率神器

EquatorCoco

后端 开发工具 后端程序员

适用于 macOS 的参考资料管理软件:Bookends

Rose

Bookends Mac破解版

ARM版CentOS Linux系统镜像文件(苹果M1专用)

Rose

EVE-NG初次启动及WEB客户端访问

小齐写代码

Lua 5.3正式版发布,支持整数、位操作和UTF-8_语言 & 开发_李士窑_InfoQ精选文章