Lobsters | 原文链接 | 2026-09-06 收录

给动态语言 Janet 加上渐进类型:deft 的双向推断、静态分析与运行时检查

来源: codeberg.org — 2026-09-04

概述

deft 是一个面向动态语言 Janet 的渐进类型库,建立于 Siek & Taha 的渐进类型理论与 Wadler & Findler 的 blame 演算之上,让带类型与不带类型的代码可以互操作。它提供类型注解、双向类型推断与静态检查,可在函数边界做运行时 cast,并精确地把错误「归咎」给调用方或函数本身。类型既可用内置谓词,也可用任何返回布尔的函数自定义,还支持 occurrence typing 收窄与按模块边界的渐进迁移。

核心要点

金句

The type system uses gradual typing as described by Siek & Taha, and the blame calculus of Wadler & Findler. It enables interoperability between typed and untyped (dynamically typed) forms.
返回 Lobsters 首页