Aiki Alpha 3 发布 - 性能提升

Lobsters Hottest 工具

摘要

Aiki Alpha 3 发布,带来显著的性能改进,包括更低成本的运行时实现、自适应数表示、增强的性能分析和覆盖率,以及更严格的库约束。

<p><a href="https://lobste.rs/s/hutycp/aiki_alpha_3_released_performance">评论</a></p>
查看原文
查看缓存全文

缓存时间: 2026/08/30 22:05

# Aiki Alpha 3 发布 - decuser 博客 来源: https://decuser.github.io/posts/aiki-alpha-3-release/ Aiki Alpha 3 已发布。 标记版本 `v0.4.0-alpha-36` (https://github.com/decuser/aiki/tree/v0.4.0-alpha-36),可从 GitHub release (https://github.com/decuser/aiki/releases/tag/v0.4.0-alpha-36) 获取。 Alpha 1 使该语言成为现实。Alpha 2 使其架构变得明确。Alpha 3 在不扩大核心语言的情况下,使实现更加精确、高效、受控且可观察。 | 领域 | Alpha 3 进展 | | :--- | :--- | | **数字** | 一个精确的语言级数字模型,具有自适应的内部实现 | | **运行时** | 大幅减少分配、调用开销、遍历和实现成本 | | **列表** | 在不可变列表语义下实现自适应持久化 | | **控制** | 保留惰性 `and`/`or`、正确的尾调用、严格的从左到右求值 | | **数学** | 精确的本机权威、有界的精确 FFI 加速、明确的近似数学 | | **性能分析** | 单一观察网络,用于调用、边界、分配和主机成本 | | **覆盖率** | 静态可覆盖结构与动态观察命中相结合 | | **库** | 在随附库中跨模块/帮助/导出/本机/FFI 实现更强的不变量 | | **工具** | 统一的命令注册表、递归目标处理、更强的验证级别 | | **分发** | 可重定位的 Linux、macOS 和 Windows amd64 版本 | | **仓库** | 工程材料已整合;实验移至独立仓库 | 最重要的变更,大致按影响程度降序排列: - **运行时实现成本大幅降低。** 调用、环境、参数框架、AST 遍历、字面量实现、解析器簿记和不可变字符串观察都已收紧。其意图是语义不变:语言本身保持不变,而底层机制做了更少的工作。 - **精确数字现在具有自适应的物理表示。** Aiki 仍然呈现一个精确的 `number` 类型。在内部,值可以根据需要使用紧凑整数、紧凑有理数、精确有限二进制形式或任意精度有理数。表示是实现的选择;精确性是语言规则。 - **持久列表也得到了同样的处理。** 列表仍然是不可变的值,但它们的实现在扁平、前沿和持久/分叉形式之间自适应调整,而不会将这些选择暴露给程序。 - **正确的尾调用和惰性逻辑控制现在已成为实现的语言表面的一部分。** `and` 和 `or` 仅在需要时才求值其右操作数。其他二元表达式仍然严格从左到右求值;Aiki 仍然没有传统的运算符优先级层次结构。 - **性能分析被重建为一个单一观察网络。** 它可以说明调用者/被调用者关系、运行时层和实现边界的跨越、分配计数和字节、包含和排除主机成本,以及选定的实现类别。 - **覆盖率现在共享相同的执行证据。** 可覆盖站点来自程序和 AST 的静态模型;动态命中来自观察网络,而不是来自第二个独立的运行时会计机制。 - **数学表面现在按语义角色分离。** `math/native` 是精确的语义权威,裸 `math` 解析到此处。`math/ffi` 加速精确的 `floor`、`ceil` 和 `modulo` 表面。`math/approx` 包含明确的近似 `sin`、`cos` 和 `sqrt`,而不是削弱 Aiki 的数字模型。 - **库结构受到更强的机制约束。** 模块摘要、导出、帮助、文档、别名、本机/FFI 策略和声明的加速表面相互检查,而不是允许各自独立变化。 - **命令行和验证结构被简化。** 顶层分发和帮助共享一个注册表,递归目标处理被集中,验证现在具有明确的级别,包括 `make validate-lang`、`make validate-all`、`make rigorous`、`make distcheck` 和 `make historycheck`。 - **仓库更小,且按用途划分更明确。** 工程记录、提案、性能分析材料、Git hooks、证据和 AI 辅助工程方法现在位于 `engineering/` 下。示例和编辑器支持有明确的位置。核心仓库越来越专注于语言本身。 实验也已从 Aiki 核心仓库移至一个单独的项目: - aiki-experiments (https://github.com/decuser/aiki-experiments) 这种分离是有意为之的。实验从外部使用 Aiki,并作为独立的集成和压力测试表面,而不是成为语言实现的一部分。 现有实验包括: - 001 — 语义性能分析和递归自解释 - 002 — Thompson 的 1968 正则表达式编译器和 IBM 7094 重建 - 003 — 四路生命游戏,测试并发、进程、存储和混合实现表面 - 005 — PDP-11/40 重建,旨在可在受监控的机器表面上运行 UNIX V6 这种安排也使得边界更加清晰:机器特定的工作保留在实验中,除非它暴露了真正的 Aiki 缺陷或普遍有用的缺失能力。 Alpha 3 包含*《Aiki 编程语言报告》*和*《这是 Aiki —— Aiki Alpha 3 版本发布》*的更新版本。语言报告现在涵盖了完整的随附库表面和形式化语法;历史性的 Alpha 1 和 Alpha 2 文档仍予以保留。 Aiki 仍然是 alpha 版本。语法、库、工具和实现细节可能仍然会发生变化。核心设计仍然可识别:精确值、从左到右求值、显式分组、可恢复的结构化错误、正确的尾调用、隔离的并发、可检查的实现边界以及将系统捆绑在一起的可执行不变量。 提供适用于 Linux、macOS 和 Windows 的发布存档。 ### 链接 - Aiki on GitHub (https://github.com/decuser/aiki) - Alpha 3 发布版 (https://github.com/decuser/aiki/releases/tag/v0.4.0-alpha-36) - Aiki 实验项目 (https://github.com/decuser/aiki-experiments) - Alpha 2 发布版 (https://github.com/decuser/aiki/releases/tag/v0.4.0-alpha-35) *文章发布于 2026-08-30 15:27:00 -0500*

相似文章

Aiki Alpha 2 发布

Lobsters Hottest

Aiki Alpha 2 已发布,其特点包括语法驱动的架构、明确的权限边界、大量自托管功能以及系统开发库。此外,还在验证、FFI集成和多平台分发方面进行了改进。

Aiki:Alpha 里程碑 26 更新

Lobsters Hottest

本文介绍了 Aiki 项目的 Alpha 里程碑 26 更新,详细说明了该语言或工具在语法权威性、解析器工具以及失败语义方面的改进。

Stable Audio 3.0(3分钟阅读)

TLDR AI

Stability AI发布了Stable Audio 3.0,这是一个开放权重模型系列,可生成最长六分钟的变长音频,支持LoRA微调和音频修复,基于完全许可的数据训练。