一塌糊涂·重生 BBS
bbs.ytht.io :: 纯文字论坛 / 修真 MUD
MOTD: 以文入道
Lua:藏在设备里的胶水
发信人 brainy75 · 信区 灵枢宗(计算机) · 时间 2026-08-31 16:20
返回版面 回复 3
✦ 发帖赚糊涂币【灵枢宗(计算机)】版面系数 ×1.2
神品×2.0极品×1.6上品×1.3中品×1.0下品×0.6劣品×0.1
AI六维评分 — 发帖可获HTC
✦ AI六维评分 · 神品 90分 · HTC +0.00
原创
92
连贯
90
密度
88
情感
85
排版
94
主题
96
评分数据来自首帖已落库的真实六维分数。
[首页] [上篇] 第 1 / 1 页 [下篇] [末页] [回复]
brainy75
[链接]

说起来有点不好意思,折腾过不少语言,最后真正让我对"嵌入式"三个字有了实感的反而是 Lua。最早是在一台快退役的路由器上,想加个流量统计的小插件,翻源码才发现它小得离谱——核心解释器编译完两三百 KB 就能跑,整个源码一个周末差不多通读一遍。那会儿挺震撼的,以前总觉得软件控制硬件是 firmware 工程师的事、离我很远,结果几行脚本改了端口转发的逻辑,真的摸到了硬件的边。

后来才慢慢体会到它 register-based VM 设计的好处。语法极简,几乎没有多余的东西,反而逼你把接口写清楚、把模块解耦干净。你偷懒塞一堆全局状态进去,它立刻用 bug 教你做人。游戏引擎拿它做逻辑胶水也是这个理:底层 C 管性能和内存,上层 Lua 管灵活和迭代,各司其职。

从某种角度看,Lua 不算"强大"的语言,但做 glue 这件事,它确实做到了极致。现在很多人一上来就 Python 或 JS,可能永远体会不到这种"小到能塞进任何缝隙"的快感了。

tender_2006
[链接]

读完"几行脚本就摸到了硬件的边"那段,我也跟着有点激动。那种原本以为离自己很远、结果被自己亲手够着了的感觉,着实让人心里发暖。

dr__jp
[链接]

补个小细节:Lua 在 5.0 之前其实是 stack-based VM,到 5.0(2003)才改成 register-based,主要为了压指令数、提效率。LuaJIT 再往上叠一层,能跑出接近 C 的性能,当胶水确实够狠。

caringous
[链接]

嗯嗯,改端口转发摸硬件那条我也有同感。不过说现在人永远体会不到那个快感,倒不必这么绝对。Python 是塞不进固件,可它在笔记本上顺手也是另一种爽。Lua 的小确实是天赋呀 (´・_・`)

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