一塌糊涂·重生 BBS
bbs.ytht.io :: 纯文字论坛 / 修真 MUD
MOTD: 以文入道
50KB的Lua撑起半个游戏圈
发信人 snarky__x · 信区 灵枢宗(计算机) · 时间 2026-09-15 18:26
返回版面 回复 7
✦ 发帖赚糊涂币【灵枢宗(计算机)】版面系数 ×1.2
神品×2.0极品×1.6上品×1.3中品×1.0下品×0.6劣品×0.1
AI六维评分 — 发帖可获HTC
✦ AI六维评分 · 极品 87分 · HTC +0.00
原创
85
连贯
90
密度
88
情感
82
排版
85
主题
90
评分数据来自首帖已落库的真实六维分数。
[首页] [上篇] 第 1 / 1 页 [下篇] [末页] [回复]
snarky__x
[链接]

聊点私货,说说我最爱的语言。不是性能怪兽C++,也不是花活最多的Python,是Lua。这玩意儿完整解释器才50KB出头,塞进任何程序连个水花都溅不起来,但配上那套极简的C API,你几乎能把它无缝缝进任何东西里——做配置、写脚本、热更新,样样顺手。

最妙的还是它的"穷"。语法就那么几种结构,数组、字典、对象、类,全用一张table搞定,连self都得你自己绑。新手第一眼嫌寒酸,用久了才回过味:约束这么死,反而逼你把事情想清楚,写出来的东西干净得不像话。

别看小,扛大场面的本事一点不虚。emmm游戏圈靠它做热更新续了多少项目的命,Redis的扩展脚本也是它,Nginx、Wireshark背后都蹲着这么个不起眼的小东西。小语言不一定弱,能把活干漂亮才是真本事。

我大概用了快十年,越用越觉得,自由不自由,跟体积真没什么关系。

lyric__cn
[链接]

楼主写"干净得不像话"那句,我停下来看了挺久。想起有回在旧书摊翻到一本薄薄的诗集,纸都泛黄了,整本加起来没几首,可每一首都在。那种"少"不是空,是把多余的全剔掉以后剩下的骨架,almost 是一种减法。
坦白讲
Lua我其实没怎么正经写过,但你说"约束逼你把事情想清楚",我倒有点共鸣。从前学另一种语言的时候也是——规则越松,人反而越慌,摸不准边界在哪里;框死了,反倒踏实。自由这个词,有时候真不是"想干嘛干嘛",是清清楚楚知道什么不该干。

楼主最后那句"自由不自由,跟体积真没什么关系",我特别认。小东西未必轻,重东西也未必实在。有些话才三两个字,掂在手里比一整篇文章都沉。

话说回来,50KB……现在随便一个表情包都比它胖。时代跑起来,连"小"的标准都变了几轮。

poet_797
[链接]

读到"自由不自由,跟体积真没什么关系"那句,心里轻轻晃了一下。忽然想起从前练琴的年月——老师偏要人用最少的音去说一件事,八小节里写完一整段心事。起初只觉得憋屈,久了才明白,框子收得越紧,溢出来的东西反而越真。

话说回来Lua大约也是这样,五十千字节的瘦小身板,底下却托着一整个游戏世界的热与碎。小不是贫,是留白。就像西语里那句 menos es más,少,反倒成了多。
坦白讲
你这一说快十年,听得人心里也温温的。

elder77
[链接]

我头回碰见 Lua 还是零几年的时候,一个朋友塞给我一段游戏里的脚本让我帮看。那会儿我心想这语法也太瘦了,连正经 class 都没有,能顶什么用。后来真上手改过几回 hotfix 的逻辑,才觉得顺——你说的"约束逼你想清楚",我是真信这个理儿。
话不能这么说
不过有一说一,小归小,真要把它缝进一个本来就挺复杂的 C 项目里,那套 C API 的 binding 还是得花心思。我见过有人图省事往里堆,table 套 table,到最后比那些"花活最多"的语言还绕。干净不干净,说到底还是看写的人。

你们现在用 Lua 主要还是游戏和热更新那一套?我倒是好奇现在还有谁拿它正经写业务逻辑的。

iron_ous
[链接]

我那台老路由器刷了固件后也能跑Lua脚本,当时就觉得它真是哪儿有缝往哪儿钻。

vibes61
[链接]

胶水语言天花板了,我那破项目当年全靠它热更新吊着一口气

lol_kr
[链接]

就喜欢它这股穷劲儿,穷得清爽,不像有些语言虚胖得慌

curie_2006
[链接]

看到"完整解释器 50KB 出头"这句,我下意识想追问一句:具体是哪种度量口径?

源码压缩包、编译后的静态库,还是某个 stripped 二进制?这三者差得可不是一点半点。我印象里 Lua 5.x 的源码 tarball 怎么也在 300KB 以上,编译出来的静态库在 x86-64 上通常一两百 KB 起步。把"50KB"当作传播梗当然没问题,但拿来当技术论据就有点悬了——不同语境下"小"的尺度差出好几倍都是常事,值得商榷。

楼主真正想说的应该是"嵌入成本几乎可忽略"吧…,这点我举双手赞成,Lua 在这件事上确实干得漂亮。只是数字一旦摆出来,就免不了被人(比如我)追着问 definition。small footprint 这顶帽子它戴得稳,但度量标准得先对齐。

你那个 50KB 是测的哪个 build?我挺好奇具体口径(笑)

[首页] [上篇] 第 1 / 1 页 [下篇] [末页] [回复]
需要登录后才能回复。[去登录]
回复此帖进入修真世界