## Coalton 0.2:重大进展 Coalton 是一种静态类型函数式编程语言,嵌入在 Common Lisp 中,其发展基于工业应用中的经验。即将发布的 0.2 版本侧重于解决生产使用中发现的限制,显著影响代码清晰度、效率和类型安全性。 最大的变化是采用**固定参数函数**,取代了之前的 Haskell 风格的柯里化。这使得关键字参数、改进的类型错误消息以及更高效的编译成为可能。虽然柯里化仍然可以实现,但需要更明确的代码。 进一步的改进包括**多值返回**的本机支持(取代了复杂的元组解包系统)、**作用域类型变量**以获得更简洁的代码,以及使用方括号和推导式的新语法来处理**集合和关联**。一个新的标准库模块 **`coalton/xmath`** 引入了对**实代数数**的支持,从而为诸如验证几何相等性之类的计算提供精确算术。 在底层,类型系统已被加强,以解决与可变运算符相关的 unsoundness 问题。标准库已更名以提高清晰度,并且 Coalton 现在将正式进行版本控制,0.2 版本计划于 2026 年 3 月 23 日发布。未来的开发可能会探索线性类型和资源管理。
## 不等式的几何直觉
受圆形可视化的启发,作者探索了用几何方式表示代数不等式,并创建动画以建立直觉。核心重点是可视化著名的算术-几何平均值不等式——算术平均值总是大于或等于几何平均值。
这是通过几种几何作图实现的:比较相交圆形成的直角三角形的半径和直角边,分析半圆内的线段,以及检查立方体与长方体体积的关系。这些视觉效果展示了如何对称性(等边)最大化面积/体积,直接说明了不等式。
进一步的探索包括使用维维安尼定理和等边三角形可视化内斯比特不等式,揭示了中心平衡如何最小化表达式。作者得出结论,虽然许多不等式不易转化为基本的几何图形,但尝试可以更深入地理解数学背后的物理原理以及对称性的重要性。最终,这些可视化旨在表明对称性不仅仅是关于美学,而是数学本身中的一项基本原则。
现代处理器利用分支预测来高效地每周期执行多条指令。这种预测并非完美,准确性会影响性能,尤其是在基准测试期间。一个涉及循环和随机条件语句(如果一个值是奇数)的基准测试可以显示处理器学习分支模式的能力。
测试表明,处理器在重复运行并使用一致的随机数据后可以“记住”分支结果。AMD 的 Zen 5 处理器表现出最强的学习能力,准确预测了 30,000 个分支。Apple 的 M4 紧随其后,为 10,000 个,而 Intel 的 Emerald Rapids 则落后,为 5,000 个。
作者指出,该基准测试突出了不同处理器架构之间分支预测性能的显著差异,对 Intel 的结果表示失望,并赞扬了 AMD 的进步。该测试的源代码是公开可用的。这表明基准测试结果可能因处理器特定的优化(如分支预测)而产生偏差,尤其是在使用小型或重复数据集时。