您现在的位置是:首页 > 文章详情

Snow 编程语言 v0.10.0 发布: 实现方法重载、增加 ANY 类型

日期:2025-09-12点击:21

更新内容

新增功能

  • 方法重载:引入按参数总数(含隐式 this)区分的重载机制;统一为为重载方法追加 _N 后缀的命名规则;新增重载表与 addMethod / getMethod;对象/静态方法调用自动追加 _N,普通函数调用不追加。
  • 字符串/引用拼接:IR 新增 ADD_R,并由 IROpCodeMapper 映射到 VM 指令 R_ADD;VM 新增 RAddCommand,实现「两引用出栈 → 转字符串 → 按左到右顺序拼接 → 压栈」的语义,延续非数值 + 的字符串连接行为。
  • 类型系统扩展:新增万能类型 ANYisCompatible 增强以支持 ANY 与父类引用检查;类型提升工具支持引用类型 R
  • 变量声明支持自动类型提升。
  • 平台:新增 macOS 打包配置,完善分发能力。

性能和稳定性改进

  • 数值计算精确化:实现数值加法的精确处理,消除常见浮点误差;非数值 + 仍保持字符串连接语义。
  • 调用链路优化:更新 CallExpressionAnalyzer 与方法查找算法,按参数计数解析更快、更准确。
  • 执行路径简化:精简 CallCommand,移除虚拟调用路径,仅保留静态调用;删除不再使用的 InstanceVirtualTable,降低复杂度与运行开销。
  • 核心组件重构:优化 IRBuilderScopeSignatureRegistrarLocalVariableStore 等类的结构与文档,职责更清晰、内存/查询开销更低。
  • 健壮性:加强参数校验与异常处理,提升容错与可观测性;改进模块常量加载逻辑并简化实现。

开发者体验提升

  • 统一重载命名与结构体方法降级规则(StructName.method_NN 含隐式 this),并梳理结构体签名注册与继承流程,易于理解与排错。
  • 代码与注释全面整理:统一导入顺序与格式,清理未使用变量和冗余兜底逻辑,补充必要注释与包级文档。
  • 日志与错误信息风格统一,定位信息更明确;示例/测试更完善,便于本地复现与演示。
  • 新增 macOS 打包流程,降低本地试用与交付门槛。

Bug 修复

  • 修复 成员访问表达式 在继承场景下父类字段下标重复计算的问题(已进行字段去重与索引纠正)。
  • 修复 syscall 子命令 的解析异常,提升命令行稳定性。

文档改进

  • 补充与统一类型系统文档:完善 BuiltinTypeRegistry / BuiltinType 的注释与结构说明,新增 ANY、引用类型 R 的类型提升与兼容性示例。
  • 完善 IR↔VM 指令映射文档,明确 ADD_RR_ADD 的语义与边界。
  • 梳理多处 README 与类文档,统一术语与风格,提升可读性与检索性。

如遇到使用问题,欢迎及时 提交 Issue

原文链接:https://www.oschina.net/news/371893/snow-lang-0-10-0-released
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章