mojo_hub 亮点 标准库开源:Mojo 标准库的部分包继续开源,包括algorithm、benchmark、buffer等2。 MAX AI 内核库开源:MAX AI 内核库的部分包也在持续开源,有layout、linalg、register2。 语言变化 三元操作合并方法:现在可以使用用户声明的__merge_with__()双下方法在三元操作中合并不同类型的值2。 自动参数化扩展:自动参数化现在扩展到结构体元类型2。 编译器警告:编译器会对未使用的赋值发出警告;还会对在初始化器中使用过时的mut self发出警告,应切换到fn __init__(out self)2。 函数注解:def函数现在要求参数有类型注解,缺少返回类型时将视为返回None,同时移除了对object类型的支持2。 标准库变化 字符串类型改进:String类型有多项改进,包括不再复制StringLiteral和StaticString的数据、实现小字符串优化、StringSlice和StaticString成为前置部分、StringLiteral类型设计变更等2。 其他类型改进:List类型得到类似String的改进;Set现在符合Copyable特征;一些特征被移除,可通过特征组合替代2。 PythonObject 类型重制:为了改进 Mojo - Python 的互操作性,对PythonObject类型进行了重新设计2。 其他改进:Span有了swap_elements()方法;Pointer有get_immutable()方法;添加了一些新函数和方法,如WritableVariadicPack、pathlib.Path.write_bytes()等2。 工具改进 调试器修复:修复了调试器中 SIMD 布尔值的显示问题2。 语言服务器性能提升:语言服务器避免了不必要的解析,提高了性能2。 编译器优化:编译器现在能够解释用于Int和UInt类型方法的索引方言中的所有算术运算,还添加了--emit-llvm选项2。 其他变化 语法限制:添加到__mlir_op的属性语法现在仅限于固有属性2。 移除内容:移除了SIMD.roundeven()方法、一些过时的错误消息、object类型、utils.numerics.ulp以及一些弃用的函数和工具等2。 问题修复:修复了PythonObject处理大UInt64不正确等多个问题2。