mirror of
https://gitcode.com/JianFeeeee/LuaCangjia_api.git
synced 2026-09-20 08:58:13 +00:00
vendor: 引入 Lua 2.5 官方源码 + 移植评估 (lua_2.5 分支)
- 前 lua_State 时代 API, 比 3.2 更原始(无 upvalue/无独立编译) - 评估结论: 不建议移植(多实例冲突+管道模式不可实现), 见 doc/ADAPTATION-lua25.md - 建议历史脚本用 5.1 兼容模式运行替代
This commit is contained in:
19
doc/ADAPTATION-lua25.md
Normal file
19
doc/ADAPTATION-lua25.md
Normal file
@ -0,0 +1,19 @@
|
||||
# Lua 2.5 分支移植评估(ADAPTATION.md)
|
||||
|
||||
> 本分支已 vendor Lua 2.5 官方源码到 `lib/lua/`(src/ + include/)。
|
||||
> **桥接层尚未适配,且不建议移植。**
|
||||
|
||||
## 结论:不建议移植
|
||||
|
||||
Lua 2.5(1996)与 Lua 3.2 同属"前 lua_State 时代",且比 3.2 更原始:
|
||||
|
||||
1. **全局单例状态机** —— `lua_open(void)` 无参数无句柄,与本项目多 runner 实例抽象根本冲突
|
||||
2. **fallback 机制而非 metatable** —— 面向对象模型完全不同
|
||||
3. **无独立编译** —— `lua_dofile(char*)` 一步式,管道模式的块压栈不可实现
|
||||
4. **upvalue 语义缺失** —— 闭包模型尚未引入(3.1 才有 upvalue)
|
||||
5. 1996 年代码,现代编译器需多处修正才能通过(K&R C 残留)
|
||||
|
||||
若确需支持历史脚本,建议直接用 Lua 5.1 的兼容模式跑(语法子集大部分兼容),
|
||||
或参考 lua_3.2 分支的评估做极简 doString-only 桥接。
|
||||
|
||||
本分支仅作为源码存档。
|
||||
Reference in New Issue
Block a user