• v0.3.0 feb7984e25

    Alia v0.3.0
    All checks were successful
    Release / release (push) Successful in 23s
    Pre-release

    LingbaSanar released this 2026-10-21 01:09:39 +08:00 | 6 commits to main since this release

    里程碑更新

    • 自举(进行中):见 Plans/bootstrap-plan.md
      • 仓库与波次(2026-10-20):自举工程入库——Bootstrap/Executor 对应
        Executor.git、Bootstrap/Manager 对应 Manager.git(Bootstrap/Tests 属
        Executor 仓库);最终在 Git 层面将 Base/Executor/Base/Manager 的仓库链接
        由 Executor_JS/Manager_JS 更换为自举版本
      • 修复:跨模块成员链实参分派失配——成员结合点判定改为「分隔字收尾(token 结构)
        • 前缀裸调用(重解析)」双判定,S.enterClosure closure.modScope with ...
          类跨模块关键字调用不再把真实调用埋进嵌套成员目标(BootstrapRuntime case2
          阻断清除);自举版 tryParseAliasObjectCall 同步补齐双判定
      • 优化:自举解析前端参数解析记忆化(镜像 JS _argParseMemo:表达式系参数、
        范围 ≥6 记号、非别名值递归语境;程序号+首记号行列+长度代理数组身份)——
        语言核装载 js.alia 解析 127s → 95s(-25%)
      • 优化:arena 清扫摊销触发(阈值 max(8192, arena规模/2),清扫标记成本
        正比存活规模)——rs.alia 装载期 OOM 消除
      • 优化:覆写分派匹配按调用位点缓存(Runtime.matchAliasDispatch,实参 token
        数组身份恒定,AST 静态 ⇒ 匹配结果缓存)
      • 性能归因(逐句计时实证,见 Plans/bootstrap-plan.md §仓库与波次):
        rs.alia 装载成本主体为解释常数作用于巨型指令体(@compileEntry 体 1,608 行
        单句 58.6s),P5 批次子进程形态可行;Rust 版高性能形态为不动点达成后的
        rs 目标编译产物,四载具口径收口
      • 收尾波:解释器去帧化(RTState/RTFrame 退役)——扁平显式作用域栈 + 模块命名空间
        (真正的 import/export:模块级状态持久、闭包捕获定义语境、循环导入 set-then-populate);
        解释器/编译驱动/ASTifier/Checker 全部项目化拆分;调用纪律落地(call 仅存无参执行
        与动态分派逃逸口,已知模式一律语法式 + 辅助关键字);数据类归位 type 语句。
      • 引擎:循环导入三载具支持(宿主 set-then-populate、js 惰性模块命名空间、nodejs 原位导出);
        递归 type 记录检查(深度解析具名形状 + isAssignableTo 同一短路/可空解包前移);
        成员结合优先于调用实参(别名对象调用实参中的成员链不再切断方法点识别);
        原生包装类未声明成员返回绑定方法(修零参调用 undefined this 崩溃);
        补齐表达式位 new 求值。
      • 更新:类型注解解析递归进入数组元素类型、对象属性类型与泛型实参,[P]、*[k: P] 中的类名不再退化为裸类型名
      • 更新:类型描述符的 toString() 优先输出类名,[P] 不再显示为 [*[v:Number, ...]]
      • 更新:type 声明名记入类型描述符的 declaredName,供成员与索引查找回查类型注册表
      • 修复:类实例数组无法赋给以类名标注元素的数组字段
      • 修复:以类名标注的数组元素无法传给类类型形参
      • 修复:nodejs/js 后端 Object.set/Object.delete/Object.contact/Object.isObject 编译为不存在的 JS 方法,运行期 TypeError
      • 修复:nodejs/js 后端 Object.create 生成 Object.create(src),语义为设置原型,与解释器「复制成员」不符
      • 修复:nodejs/js 后端 Object.assign 为原地合并,解释器为非原地合并
      • 修复:nodejs/js 后端 Object.has 用 in 判定,会命中原型链成员,与解释器「仅自有键」不符
      • 更新:Object.* 降级收敛为 js 后端的 objectStaticCall,Call 与 AliasObjectCall 两条路径共用
      • 更新:运行时新增 __aliaObjectCreate/__aliaObjectAssign/__aliaObjectContact/__aliaObjectSet/__aliaObjectDelete/__aliaObjectIsObject/__aliaObjectToPlain/__aliaObjectToArray
      • 修复:nodejs/js 后端 String.toNumber/toBoolean/toArray 编译为 JS 原生字符串上不存在的方法,运行期 TypeError
      • 修复:nodejs/js 后端 ==/!= 缺少数组深比较,[1,2] == [1,2] 恒为 false
      • 修复:解释器 valuesEqual 在解包前判引用同一,Number(NaN) 的同一性使 n == n 为 true,与编译产物的 IEEE 语义相反
      • 更新:String.toNumber 语义为 Number(str),非法串产出 NaN,与 as Number 的报错语义不同(与解释器一致)
      • 更新:标准库 fs 新增 list/listRecursive,枚举目录直接子项与递归相对路径,结果排序、分隔符固定为 /,供自举编译器枚举源码树
      • 更新:新增错误码 FS_LIST_FAILED(中英双份)
      • 更新:编译指令体(@compileEntry/@compileWith/@compileNode/@compileAlias/@compileClass)统一进入生成器模式,指令体内声明的编译期变量对同语言覆写体可见
      • 更新:生成器模式下编译期动态字典的成员/下标赋值与数组实参不再作静态校验
      • 更新:空对象字面量可赋给任意对象形态(Alia 对象运行期动态开放,形状注解为提示性)
      • 修复:类型描述符解析时联合判定排在数组/对象形态之前,[String | Code] 被拆成非法成员
      • 修复:语法式 new 的构造实参按记号计数,new C [a] 被记成 3 个实参
      • 修复:rs 后端 mathExpr 无参分支误传对象字面量 *[]
      • 更新:rs 后端 CodeStr/CodeArr 改用 Dynamic,codeOf/argAt 等助手按语义接受任意编译片段
      • 归零:Base/Core/src/backends/{js,nodejs,rs}.alia 类型检查错误 40/36/128 → 0/0/0
      • 更新:新增 AST dump 差分测试台(Tests/Systems/AstDumpSystem.js),覆盖 Base/Core、Tests/Native、Examples 共 85 个文件,校验 dump 可复现、非确定字段已排除、对输入扰动敏感,并维护可复核的基线快照
      • 修复:js/nodejs 后端控制流不产值——switch 的 case 体、尾位置与表达式位置的 if/if-else/switch 丢失取值(alias f -> String { switch ... } 返回 undefined,let r = if ... {} 生成非法 JS)
        • 更新:@compileConfig 新增 controlFlowAutoReturn(js/nodejs 开启):内核对尾语句的控制流别名按表达式重编译后交还 return,使「栈末值即返回值」对控制流成立
        • 更新:js 后端 if/if-else/switch 覆写按 _ctx.isExpression 分支出值形式(IIFE + stackValueExpr 体末句 return);内核 _compileExpression 对 AliasCall 与语句路径同序(先 @compileAlias 再回落 @compileNode)
        • 更新:新增跨目标一致性测试 Tests/Systems/ControlFlowValueSystem.js(9 个场景)
      • 更新:rs 后端维持语句形式(未开启 controlFlowAutoReturn),尾位置控制流产值为既有限制,随自举 P1 一并处理
      • 修复:内核 _shouldAutoReturn 排除表遗漏 builtin:assign/builtin:add-assign/builtin:inc,与 _compileStackWithReturn 不一致
      • 更新:自举 P1-1——新增 Bootstrap/(Alia 侧编译器),Tokenizer 与 Base/Executor/ASTifier/Tokenize.js 逐字段对齐,经差分测试台(Bootstrap/Tests/TokenizeSystem.js)在 85 文件 / 925 句 / 10,562 token 语料上与 JS oracle 逐 token 一致,解释与 nodejs 编译产物双模式通过
        • 更新:差分 fixture 采用定宽字段文本格式(零填充整数 + 码元计长),规避 JSON 嵌套结构导入的运行时限制
        • 修复:js 后端 switch 语句形式整体包 IIFE,同级多个 switch 的哨兵声明不再冲突
      • 修复:对象字面量值扫描按记号内容而非类型识别括号,*['value': '(', 'pos': 1] 中 STRING 值含括号字符时该键与其后键被静默吞掉(与 tryParseAliasObjectCall 同一规则,按 token 类型识别)
      • 修复:Checker 对未声明接收者的成员/下标赋值零报错(zz.k = 2 静默写穿无关对象),现报 TYPE_UNDEFINED_VARIABLE;类语境的 self/this/super 与编译指令语境名豁免
      • 修复:字符串字面量下标赋值从未携带字面文本的类型描述符上取键名,恒为 undefined——闭合形态误放行、开放形态误报,现取 AST 节点文本
      • 修复:checkFile 未向 Checker 传源文件目录,相对 import 的类型预加载依赖进程 cwd 侥幸解析
      • 更新:跨模块类型流——Checker 预加载 export this 模块的顶层具名 alias 签名(形参/返回类型/实参校验),mod.fn 调用返回值不再退化为 Value(运行期数组/对象身份本就完好)
      • 更新:自举 P1-2——新增 Bootstrap/split.alia:注释清洗(~:/~///,字符串内不算注释)与句子切分状态机(括号深度、引号、句首行列)与 JS 实现逐字段对齐,经差分测试台(Bootstrap/Tests/SplitSystem.js)在 85 文件清洗语料的 998 句上解释与 nodejs 编译产物双模式一致
      • 更新:自举 P1-3——新增 Bootstrap/parse.alia(arena 数据模型表达式解析器,Bootstrap/tokenize.alia 同步自 main.alia 拆出)与差分测试台(Bootstrap/Tests/ParseSystem.js):运算符优先级链、后缀链、数组/对象字面量、call 形式、as 后缀、括号分组、内建类型负号实参收集逐字段对齐,78 个表达式语料 dump 一致,解释与 nodejs 编译产物双模式通过
      • 更新:自举 P1-4——新增 Bootstrap/alias.alia(alias 模式匹配与注册表:parseKeysContent 可空与复合类型形参、matchPatternRecursive 回溯、候选边界与 Stack 锚点剪枝、参数解析各类型、对象形状回落、alias 值递归守卫、alias 对象调用回落、择优与计分)与差分测试台(Bootstrap/Tests/AliasSystem.js):20 定义 × 39 流逐块一致(MATCH 31 / NOMATCH 7 / THROW 1),解释与 nodejs 编译产物双模式通过
      • 更新:自举 P1.5 引擎缺口修复波——P1-3/P1-4 记录的 9 项语言缺口逐项复查:2 项真实缺陷修复,7 项重新定性关闭(多缺陷叠加表象 / Grammar 既定语义 / 收窄手段已具备),终态见 Plans/engine-gaps-plan.md
      • 更新:自举 P2-1——新增 Bootstrap/types.alia(类型描述符层:parse 全形态判定与顺序、括号深度 0 的联合/属性切分、toString 规范化、isAssignableTo 全分支含名义继承链、mergeTypes)与差分测试台(Bootstrap/Tests/TypeDescSystem.js):33 类型串 + 34 判定对 + 6 合并对逐条一致,解释与 nodejs 编译产物双模式通过
      • 更新:自举 P2-2(进行中)——Checker 差分台架落地:Bootstrap/Tests/ast-serialize.js(AST 行协议序列化器:location 展平、Code.tokens 预拼接、Prop 合成节点、#E 段终止)+ Bootstrap/checker.alia(arena 装载器、扁平化作用域栈、变量声明/赋值全族、inferType 表达式族的诊断检查,~2,100 行)+ Bootstrap/Tests/CheckerDiffSystem.js(语料诊断序列差分)
        • 更新:types.alia 全量内联到 checker.alia(E11 跨模块开放形状 → Value 的唯一可靠绕开);Base/Executor/index.js 新增 options.skipCheck(自举过渡期:自举 Checker 代码在被替代前无法过被替代者全部检查)
        • 剩余:CheckerDiffSystem 的 29 片段诊断序列差分中,typed 声明路径(case 5 起)未产出诊断——需调试 checkVarDecl 的 typeName 提取与 isAssignableTo 比较
        • 修复:ExpressionEvaluator.getObjectProperty 的数组/字符串下标读取统一经 wrapPrimitive 包装化(与 pop 内建一致)——此前 .. 拼接产出的裸 string 存入数组后读出,其内建方法(toNumber/trim)调用丢 this
        • 剩余:checker.alia 需通过现行 Checker 自身检查(31+ 处写法限制待清理)后方能进入差分调绿
        • 记录:引擎缺口 E10(类型注解数组 + call push 构造元素的成员方法调用丢 this,见 Plans/engine-gaps-plan.md §3.5)——types.alia 以手写 trim 绕开
        • 修复:确定性解析错误在 alias 回溯匹配中被空 catch 吞没——对象字面量值的裸调用形态(典型:alias 助手声明在使用点之后)静默产出 null 或报误导性错误;现以 error.definitive 标记穿透回溯,报错直达根因(Cannot parse 'helper s' as a value; ... declared before this point)
        • 修复:print 双呈现(行为契约决策:统一裸串)——解释器 builtin:print 对 String 值裸呈现,与 js/nodejs 编译产物一致;inspect/toDescription 的描述语义不变;全部差分测试删除双编码比对逻辑
        • 测试:新增 Tests/Systems/CrossModuleSystem.js(嵌套 alias/双层循环/容器与记录跨模块,解释器与 nodejs 产物一致);Bootstrap/aliasmain.alia 拆除扁平化绕开,恢复 readDef/parseDefText 层级结构
        • 更新:Bootstrap/ 全面清除 <Dynamic>——多态槽位用 <Value> 收窄、可空用 ? 后缀、arena/工作栈用具名开放记录类型(AstNode/DumpFrame/AliasPart 等);parse.alia 补 parseSubExpression/parseCallFormExpression 供注册表感知解析
        • 记录:P1-4 实测引擎缺口(嵌套 alias 语境内跨模块调用静默失败、嵌套数组 push 静默失败、跨模块开放类型字段读取退化 Value 等)见 Plans/bootstrap-plan.md P1-4 节
        • 更新:Ok 内建跨目标语义修复——契约(Grammar.md)为 null 判定(typeOf(val) != 'Null'),js 后端覆写与 rs 运行时 ok_v 原按 truthy 判定,Ok false 编译产物为 false 与解释器分歧;js.alia 覆写改为 x != null、runtime_rs.rs 改为 !matches!(.., Value::Null)
        • 测试:新增 Tests/Systems/OkNullSystem.js(8 场景 × interpret/js/nodejs/rs 四运行方式)
        • 记录:P1-3 实测引擎缺口(Checker 多模块导入序类型流、Object 成员读取 Value 包装、内建 pop 返回 Value 等)见 Plans/bootstrap-plan.md P1-3 节,P2/P3 排期
      • 更新:自举验收口径统一为四载具——解释器 + js/nodejs/rs 编译产物逐字节一致(Bootstrap/Tests/carriers.js;rs 随 ALIA_TEST_RS=1 并入,cargo run --release 运行);tokenize(924 句 / 10,554 行 dump)四载具全绿,split(84 文件 / 998 句)三载具通过(rs 余 2 处 IndexAccess 镜像位点类型错),parse/alias/typedesc 三载具通过;rs 遗留与镜像归一方案见 Plans/bootstrap-plan.md §3.7
        • 修复:js 后端 import 内联不去重,同一模块多处导入各内联一份,共享状态模块(arena)跨模块断裂——现以 resolvedPath 为键收集模块定义并统一提升到入口顶部,import 位点只留引用
        • 修复:rs 后端 switch/multicase 对原生类型化局部判等误用强类型 eq_bool,改 truthy(&eq_v(..));rustValueArgs(runtime::any 归一)与原生数组 raw rustVecArgs 分离
        • 修复:rs 后端 splitComma 按全部逗号切分形参类型串,[String, ...] 被切碎致 fn 误入 Value 模式;改括号深度感知
        • 修复:rs 后端 IndexAccess 默认分支只看声明类型,运行期存储容器误走原生 .get()/.chars();原生 Vec.push(Value) 未归一;模块 import 内联缺语句终结符;joinNativeArgs 收到种类名 'Vec' 无法解包(现按实参类型补全,不可补全时退回注册表分发;AliasObjectCall 参数类型改取 def.pattern)
        • 修复:内核 _nativeReturnTypeOf 对 Variable 尾语句只看 _checkedTypeName,value-mode fn 返回值按错类型回转;Variable 尾优先取 ctx.varTypes
        • 修复:Bootstrap/typesmain.alia 的 readInt6 双形参按三实参调用(解释器/nodejs 静默丢弃多余实参,rs 原生调用编译失败),统一为三形参 readIntN
        • 更新:Bootstrap/Tests/{Tokenize,Split,Parse,Alias,TypeDesc,CheckerDiff}System.js 统一接入四载具 runner;含增补平面字符的句子/文件按语料过滤(rs 运行时无法表示孤立代理项)
    Downloads
  • v0.2.2 bad6f9c551

    Alia v0.2.2 Alpha 908
    All checks were successful
    Release / release (push) Successful in 22s
    Pre-release

    LingbaSanar released this 2026-10-06 12:47:05 +08:00 | 9 commits to main since this release

    里程碑更新

    • 模组空间(ModSpace)GUI (使用Alia编写)
    • 正式支持VSCode扩展
    • gtk-alia 库

    更新、修复与优化

    • 更新:新库 Analyzer(Base/Executor/Analyzer)
      • 更新:代码格式化、高亮、符号、语境、查找、补全
      • 更新:VSCodeExt 语法分析全部迁移至 Analyzer,仅保留接口适配
      • 更新:retainDocs 保留注释与翻译指令节点,检查与执行视为空操作
      • 更新:格式化不再删除注释
    • 更新:新增 DAP 调试器(Executor/Debug、Executor/Analyzer/Debug)
      • 更新:断点、步进、暂停快照、作用域与变量查看、表达式求值
    • 更新:新增 BigInt 任意精度整数(字面量后缀 n,toBigInt/as BigInt)
    • 更新:类体成员支持类型注解,裸内置类型名同样按注解处理
    • 更新:可变性改由尾部 ... 声明,去除 class mut/typify mut
      • 更新:class C *[a: 1, ...]、const a = [0, 1, ...]、const o = *[k: v, ...]
      • 更新:mut {}/mut *{} 语法不变
    • 更新:类未声明 new 时启用默认构造,数组实参按序号键、对象实参按键名(解释器与 js/nodejs/rs)
    • 更新:编译期参数袋 __aliaParams 与配置 __aliaConfig,内核不再持有参数名知识
      • 更新:后端以 params/targetCaps/targetOutDir/targetSteps 声明所消费参数与目标行为
      • 更新:库以 declareLibAlias/declareLibDep/declareLibInline 声明归属,后端不再硬编码库名
    • 更新:Manager 支持 --outDir,按 targetSteps 执行步骤,新增 configField
    • 更新:染色方案新增 DeclKeyword/ConstVariable,Property 改蓝
    • 优化:解析性能优化(别名匹配缓存、语境链、跨 import 定义跳转)
    • 优化:编译耗时大幅下降(ModSpace 全量编译实测三目标产物逐字节不变)
      • 优化:作用域链探测不再依赖异常,新增 tryResolve 以哨兵表达未命中
        • 更新:AliasCall(语句与表达式)、类父类解析、Variable 求值器改用单遍查找
      • 优化:栈返回信号 ReturnValue 不再继承 Error,免除深栈下的栈捕获开销
      • 优化:import 目标的源码与导出解析结果按 mtime 复用,不再逐站点重复读盘与全文解析
    • 更新:新增错误码 PARSE_INVALID_TYPE_DEFINITION/PARSE_INVALID_CLASS_DEFINITION/PARSE_REMOVED_MUT_MODIFIER
    • 修复:class X extends Y 且父类未声明 new 时,子类自身成员不再被丢弃
    • 修复:匿名类具备默认构造,对象式/语法式实参按形参名绑定
    • 修复:super 不可枚举,不再出现在 Object.keys 结果中
    • 修复:Has super 判定接收者所属类型是否有父级,继承而未覆盖的方法同样返回 true
    • 修复:类型声明不再向变量名空间泄漏 _type_* 记录
    • 修复:self.<静态成员> 由 Checker 报错;成员解析优先级为自身成员 → 静态成员 → 外层语境
    • 修复:格式化器不再丢失 static 标记与类体尾部 ...
    • 修复:Analyzer 支持类/对象方法体语境链、self/super、匿名类符号与父类后置声明补全
    • 修复:rs 后端不再静默丢弃大写开头的类字段,类型注解成员不生成字段初始化器
    • 修复:rs 原生函数提升去重,实参按形参类型解包,<Dynamic> 回退 Value 运行时
    • 修复:rs 运行时助手同时接受原生标量与 Value
    • 修复:rs Object.keys 枚举类值标记与实例数据成员,类名可按名访问
    • 修复:rs web 响应解析跳过代理前置响应块,不再把响应头并入 body
    • 修复:Object.has 仅判定自有键,不再回退外层同名变量
    • 修复:catch 不再吞掉 return/break 信号
    • 修复:子语言入口变量优先于父语言同名变量
    • 修复:解释器单元素数组实参不再解包为标量
    • 修复:rs try/catch 生成类型匹配的分支,以值产生语句结尾的 catch 块不再编译失败
    • 修复:rs 属性读取/遍历助手接受原生标量与容器,5.toString、each over 原生值不再编译失败
    • 修复:rs Math.map 区间映射,按 IEEE 语义与 js 一致(含退化源区间)
    • 修复:rs 类静态方法进入静态成员表,静态方法可经类名调用并支持继承链
    • 修复:rs 类型注解成员不再生成实例字段(与解释器、js 一致)
    • 修复:rs 补齐 String.split/replace/indexOf、Array.join/indexOf/map/find/toObject/toSheet、Sheet.findIndexByValue
    • 修复:rs Object.values/entries/fromEntries/assign/create/contact/clone/set/delete/isObject 由恒等 clone_v 改为真实实现
    • 修复:rs as 转换对不可解析的目标类型抛出错误,不再静默产出 0 / false / 原值
    • 修复:rs 非有限数值统一经 value_to_string 输出 Infinity/-Infinity/NaN
    • 修复:rs 字符串长度与下标按 UTF-16 码元计(代理对占两码元),与解释器、js 一致
    • 修复:rs 标量/数组接收者的「方法作属性取值」返回可调用 Alias
    • 修复:rs 补齐 <Alias>/<Stack> 形参类型校验,非法实参不再静默通过
    • 修复:rs process 补齐 exit/kill/title;cwd/uptime/memory/envAll 改为实时读取;spawn 返回子进程 pid
      • 修复:exit 先冲刷缓冲再终止,p.exit N / call p.exit [N] 退出码与 js 一致
      • 修复:kill 发送失败(目标不存在 / 无权限 / 平台不支持)抛错,不再静默返回成功
      • 修复:spawn 采集模式显式接管 stdout/stderr(Command::spawn 默认继承父进程 stdio),并回报真实子进程 pid
    • 修复:ProcResult 补齐 pid/signal 成员声明,与各后端运行时返回值一致
    • 修复:rs 作用域栈改为按线程隔离,子线程不再弹出父线程作用域(修复 web 测试随机失败)
    • 更新:rs 未登记实现的标准库(如 FFI)显式报错并归类为 COMPILER_UNSUPPORTED_TARGET,不再静默生成空模块
    • 更新:rs panic 输出错误载荷;test 断言失败打印失败原因;try/catch 期间不重复输出
    • 修复:throw 的错误文本不再被 ThrownError 吞没,编译期/运行期限制可读
    • 修复:js Object.values/entries 等非特化成员正确传递实参
    • 修复:js 数字字面量成员取值加括号,(5).toString 不再生成非法 JS
    • 修复:js 补齐 Array.toObject;String.replace 按文档替换全部匹配(RegExp 接收者保留正则语义)
    • 修复:解释器 Array.indexOf/includes/map/find 按值比较,不再对字面量恒不命中
    • 修复:解释器 'x' as Number 抛出转换错误,不再静默产出 NaN
    • 修复:解释器类型注解成员不成为实例字段,new 不再出现在实例可枚举成员中
    • 修复:Checker 补齐 BigInt 推断、栈体检查去重
    • 修复:@compileConfig 读取仅取自身成员,未声明的步骤不再误命中同名别名
    • 优化:移除内置计时器
    Downloads
  • v0.2.1 ec10fa0ddd

    Alia v0.2.1 Alpha 884
    All checks were successful
    Release / release (push) Successful in 22s
    Pre-release

    LingbaSanar released this 2026-09-12 11:39:26 +08:00 | 10 commits to main since this release

    更新、修复与优化

    • 更新:<Stack> 支持作为表达式
    • 更新:使用 .d.alia 注册内置语句
    • 更新:命令自然语言化
    • 更新:按需裁剪运行时与产物
    • 更新:编译时采用 inherit 输出
    • 更新:@compileClass 编译指令
    • 更新:run/build 命令支持
    • 更新:支持指定输出目录
    • 更新:更多 FFI API
    • 更新:后端使用联合类型
    • 更新:支持语法式 new
    • 更新:<Stack> 解析与 Core 加载优化
    • 更新:类继承名义子类型 & 跨模块类型预加载 & 方法实参校验 & 原生返回解包
    • 更新:@compileConfig 浅合并 + configStep 可空参数支持
    • 更新:ModSpace 支持列表/详情/版本/下载统计
    • 更新:文档新章节 类型的声明与转换
    • 更新:文档新章节 使用 AI 辅助开发
    • 更新:文档主界面优化
    • 更新:语法审阅更新
    • 更新:Manager 支持参数 lang
    • 修复:web.externalAccess 问题
    • 修复:移除 &&/|| 的兼容
    • 修复:测试异常退出问题
    • 修复:alias 实参求值语义
    • 修复:RS 后端支持 cwd
    • 修复:暂时移除 test 流程
    • 优化:Core 加载速度优化
    Downloads
  • v0.2.0 7aa9634b6c

    Alia v0.2.0 Alpha 852
    Some checks failed
    Release / release (push) Successful in 25s
    Test / test (push) Has been cancelled
    Pre-release

    LingbaSanar released this 2026-08-11 20:34:36 +08:00 | 11 commits to main since this release

    里程碑更新

    • 编译器支持Rust
    • 模组空间支持

    更新、修复与优化

    • 更新:switch-case 逻辑真正支持
    • 更新:完全确定静态类型
    • 更新:web 服务器支持异步线程
    • 更新:Stack 栈支持声明返回类型
    • 更新:Manager 支持编译语句
    • 修复:标准库不保留异步与同步双标准
    • 修复:await run {...} 真正支持
    • 修复:移除 debug_test.js
    • 修复:web.httpRequest 移除 deasync 依赖
    • 优化:使用后端复用加快解析速度
    Downloads
  • v0.1.30 a3f4dc94d2

    Alia v0.1.30 Alpha 845
    Some checks failed
    Release / release (push) Successful in 17s
    Test / test (push) Failing after 1m13s
    Pre-release

    LingbaSanar released this 2026-08-04 11:38:03 +08:00 | 11 commits to main since this release

    更新与修复

    • 更新:编译器内核全面普适化
      • 更新:@compileConfig 新配置键:
        • parent(父语言继承)
        • autoReturnStyle(栈体自动返回风格)
        • statementSeparator(语句连接符)
        • fallbackRuntime(兜底运行时 preamble)
      • 更新:编译期缺失值内核仅输出空串 ''
      • 更新:类编译中 const self = this; 注入下沉
      • 更新:无入口兜底 preamble 由 fallbackRuntime 配置声明
      • 测试:新增 CompilerSystem.js 编译配置回归测试
    • 更新:新指令:<Object> extern <Object>
    • 更新:call 语法重新支持 call <Alias> <Object|Array>
    • 更新:新编译目标:nodejs
    • 修复:类表达式:class *[body] 支持匿名类,可作为表达式求值为类体对象
    • 修复:<Alias> 与 <Stack> 真正类型支持
    • 修复:类的 super 方法明确
    Downloads
  • v0.1.29 0da55a6f0d

    Alia v0.1.29 Alpha 841
    Some checks failed
    Release / release (push) Successful in 16s
    Test / test (push) Failing after 3m58s
    Pre-release

    LingbaSanar released this 2026-07-31 23:37:39 +08:00 | 13 commits to main since this release

    更新、修复与优化

    • 更新:Actions: 提交执行自动测试
    • 更新:新编译指令:@compile
    • 更新:代码格式化与代码高亮标准化
      • 更新:color() 位置保持高亮
      • 更新:@colorCategory -> Color.set
      • 更新:@colorClass 改用 *[...] Object 颜色映射
      • 更新:@colorAlias 改用 Sheet 颜色映射
      • 更新:@colorClass 对成员访问应用预定颜色
      • 更新:@colorAlias 对内含关键字应用映射颜色
      • 修复:format() 遵循 Alias 声明模式渲染调用
    • 修复:统一代码样式
    • 修复:编译器 import 处理普适化
    • 优化:ASTifier 解析速度
    Downloads
  • v0.1.28 5f2ccdca5c

    Alia v0.1.28 Unstable 839
    All checks were successful
    Release / release (push) Successful in 15s
    Pre-release

    LingbaSanar released this 2026-07-29 16:50:56 +08:00 | 14 commits to main since this release

    更新与修复

    • 更新:标准库:args
    • 更新:标准库:io
    • 更新:标准库:web
    • 更新:内置类:Date
    • 更新:内置类:RegExp
    • 更新:原生异步编程支持
    • 更新:Release自动发布
    • 修复:ASTifier BUG
    • 修复:语法明确:Alias*[]/[] Alias与参数之间无空格
    Downloads
  • v0.1.27 d8d5a489de

    LingbaSanar released this 2026-07-25 22:50:06 +08:00 | 15 commits to main since this release

    更新与修复

    • 更新:标准库:process
    • 更新:内置类明确:Math
    • 更新:内置语法 FFI -> 标准库:ffi
    • 更新:编译器加入文档
    • 更新:编译配置:@compileConfig 指令
    • 更新:标准库选择性编译
    • 修复:@compileStart 特性
    • 修复:表达式 Object.has obj key: obj1.example 解析
    Downloads
  • v0.1.26 4a84cd1d39

    LingbaSanar released this 2026-07-24 21:40:15 +08:00 | 16 commits to main since this release

    更新与修复

    • 更新:模块化系统引用方法明确
    • 更新:拆分内置类至各个模块
    • 更新:第一个标准库:fs —— 文件系统
    • 更新:模块化系统内联编译
    • 更新:@compileWith 新语法
    • 更新:each加入文档
    • 修复:@compileStart 真正为入口
    • 修复:代码诊断系统遇到非终端处理
    • 修复:删除 _premble 残余代码
    • 修复:编译器语境共享
    • 修复:编译后的运行时不破坏JS环境
    • 修复:编译器进一步普适化
    • 修复:编译结果内联 import
    Downloads
  • v0.1.24 d628246107

    LingbaSanar released this 2026-07-21 18:14:05 +08:00 | 18 commits to main since this release

    第一个Alia版本。

    完成:

    • Alia Executor:
      • Alia ASTifier
      • Alia Checker
      • Alia Compiler
      • Alia ErrorHandler
      • Alia Formatter
      • Alia Interpreter
      • Alia Loader
      • Alia Shell
    • Alia Core:
      • Alia JS Compiler
    • Alia Manager:
      • Alia ProjectManager
      • Alia Optimizer
    • Alia Docs
    Downloads