Poly/ML – Standard ML 实现

Hacker News Top 工具

摘要

Poly/ML 是一种与 ML97 标准兼容的 Standard ML 实现,以其快速的编译器、外部函数接口、线程库以及作为 Isabelle 和 HOL 等大型项目的首选实现而闻名。

暂无内容
查看原文
查看缓存全文

缓存时间: 2026/07/07 02:08

polyml/polyml

来源:https://github.com/polyml/polyml

Poly/ML

Poly/ML 是一个标准 ML 实现,最初使用一种名为 Poly 的实验性语言编写(http://www.polyml.org/Doc.html#poly)。自 4.0 版本起,它与 ML97 标准(http://sml-family.org/sml97-defn.pdf)完全兼容。完整的历史可参见此处(http://www.polyml.org/FAQ.html#history)。Poly/ML 对标准 ML 语言采用保守态度,避免不兼容的扩展。它增加了多种库扩展,尤其是线程库。Poly/ML 的活跃开发及其独特特性使其成为一个卓越的实现。

目录

特性

  • 快速编译器
  • 大型项目(如 Isabelle(https://isabelle.in.tum.de/)和 HOL(https://hol-theorem-prover.org/))的首选实现。
  • 外部函数接口(http://www.polyml.org/documentation/Tutorials/CInterface.html)——允许在 Poly/ML 中加载静态和动态库,并将其函数暴露为 Poly/ML 函数。静态链接示例见此处(https://www.mail-archive.com/[email protected]/msg00940.html)。
  • 符号调试器(http://www.polyml.org/documentation/Tutorials/Debugging.html)
  • Windows 编程接口(http://www.polyml.org/documentation/Tutorials/WindowsProgramming.html)
  • 线程库(http://www.polyml.org/documentation/Reference/Thread.xml)——提供针对标准 ML 修改的简化版 Posix 线程,允许 Poly/ML 程序利用多核。垃圾回收器也是并行化的。

基础库

Poly/ML 基础库的文档可在此处(http://www.polyml.org/documentation/Reference/Basis.html)找到,包括全局值和类型以及结构体、签名和函子的信息。更深入的文档可在 SML Family 网站(http://sml-family.org/Basis/manpages.html)找到。

安装

Poly/ML 原生支持 i386(32 位和 64 位)和 ARM(仅 64 位)。在其他架构上也可以使用字节码解释器工作。更多信息请参阅下载页面(http://www.polyml.org/download.html)。

邮件列表

Poly/ML 有一个邮件列表(https://lists.polyml.org/postorius/lists/polyml.lists.polyml.org/),用于提问和获得支持。

相似文章

为什么ML/OCaml适合编写编译器(1998)

Lobsters Hottest

这篇1998年的文章认为,ML和OCaml非常适合编写编译器,因为它们具有垃圾收集、尾递归优化以及带有模式匹配的代数数据类型等特性,这些特性简化了复杂编译器数据结构的处理。

PluraMath:将数学推理评估扩展到高资源语言之外

arXiv cs.CL

PluraMath 将 PolyMath 数据集扩展到 18 种未被充分代表的语言,提供了一个经过人工验证的基准,用于评估 LLM 中的多语言数学推理。该论文揭示了在 27 个模型中,高资源和低资源语言之间持续存在的性能差距。

一种基于MLIR的大型语言模型编译方法

arXiv cs.CL

本文提出了一种基于MLIR的大型语言模型编译方法,通过两种自定义方言(TopOp和TpuOp)将模型从框架无关的语义逐层降低为硬件专用指令,并针对自回归推理阶段(预填充、预填充KV和解码)引入三阶段静态编译。

prism-ml/Ternary-Bonsai-27B-mlx-2bit

Hugging Face Models Trending

Prism ML 发布了 Ternary-Bonsai-27B-mlx-2bit,这是一个三元量化的 27B 参数语言模型,在约 7.2 GB 内存下实现了 FP16 性能的约 95%,使笔记本电脑能够进行完整推理。