pjh123
|
3d1ece321b
|
perf: typeof 改 js_type 单次提取并复用进程级静态字符串消除每次分配
|
2026-08-15 16:09:19 +08:00 |
|
pjh123
|
f2535ffc77
|
perf: 字符串 +/+= 二元拼接改 Cons rope 惰性扁平化消除 O(n²)
JsString 拆 Flat/Cons 变体:Cons 经独立 ConsNode 保存左右子节点 + O(1)
字节长 + 惰性扁平化产物缓存(OnceLock 原子发布,产物挂节点生命周期)。
concat_strings 接线:总长 ≤ 128B 的小链急切扁平(与 rope 前同款,拼接即
消费场景零开销),大链 O(1) 链接——大段重复拼接从 O(n²) 拷贝降为 O(n)
链接,文本在消费点(.length/==/string_ref/方法族)首次扁平化后缓存。
GC 兼容:mark 收口 mark_string_live 传播 Cons 子节点与产物闭包(显式栈
防深链爆栈);sweep/full_reset 共用 drop 辅助连带释放产物;节点字节记账
用 O(1) byte_len。rope 节点登记 session 字符串表,与执行期字符串 GC
(指令边界触发)天然兼容。JsString 结构 32B 与 rope 前同 bin,小串路径
零结构回退;unsafe impl Send/Sync 论证同 StringPtr(perm 恒 Flat)。
|
2026-08-15 14:32:08 +08:00 |
|
pjh123
|
e1747ca560
|
perf: ASCII 单字符缓存 + 字符串迭代器游标收尾
|
2026-08-14 12:11:54 +08:00 |
|
爱特每羊队
|
328b8a3ddc
|
docs: 补充注释与格式化
|
2026-08-06 23:10:27 +08:00 |
|
爱特每羊队
|
f461235f04
|
docs: 添加 Rustdoc 注释
|
2026-08-05 21:46:47 +08:00 |
|
爱特每羊队
|
b2dd7387a6
|
feat: 为内核构造、BuiltinWorld 初始化、ShapeForge/StringForge/CodeForge 添加结构化日志
|
2026-06-26 21:09:36 +08:00 |
|
爱特每羊队
|
466a0815ca
|
refactor: 字符串值改用 JsString 指针表示,键与字面量改用 PermInterner
|
2026-06-24 20:15:15 +08:00 |
|
爱特每羊队
|
6bf5daa1af
|
refactor: 清理未使用符号,合并bind_constructor宏,统一init/rebind绑定列表,bind_number改为表驱动
|
2026-06-24 12:12:44 +08:00 |
|
爱特每羊队
|
933612c89d
|
fix: 修复全局边界安全与内存稳定性问题
|
2026-06-22 19:43:00 +08:00 |
|
爱特每羊队
|
bf74adf7f5
|
refactor: 扁平化对象属性存储并优化常量池与 IC 热路径
|
2026-06-13 23:59:47 +08:00 |
|
爱特每羊队
|
6144e51c1c
|
feat: 添加 Kernel 与 VM 分层结构化日志
|
2026-06-13 18:59:41 +08:00 |
|
爱特每羊队
|
5d1d25074e
|
style: 减少自动格式化换行
|
2026-06-09 00:53:46 +08:00 |
|
爱特每羊队
|
01cd250eda
|
feat: 添加 do while 与 for-in 语法枚举指令支持
|
2026-06-06 18:18:31 +08:00 |
|
爱特每羊队
|
48bfb24cc6
|
refactor: StringForge 规范化类型命名
|
2026-06-05 23:24:07 +08:00 |
|
爱特每羊队
|
ba46a3e60b
|
feat: 实现全局单例缓存管理内核
|
2026-06-05 22:15:59 +08:00 |
|
爱特每羊队
|
cc54720a05
|
feat: 实现双释放规则的全局字符串共享池
|
2026-06-05 21:29:58 +08:00 |
|