液体类型:逻辑上合格的数据类型-自动推断优化类型

时间:2024-03-05 17:28:01
【文件属性】:

文件名称:液体类型:逻辑上合格的数据类型-自动推断优化类型

文件大小:38KB

文件格式:ZIP

更新时间:2024-03-05 17:28:01

Rust

逻辑合格的数据类型 该存储库包含在Rust的上的实现,该实现基于ML的隐式类型的变体。 建造 此项目需要在库搜索路径中具有库。 跑 例如, examples/max3.ml定义一个函数max并将其应用于两个参数: let max = fun x -> fun y -> if x > y then x else y in max 1 - 3 您可以通过运行以下命令来推断该程序的液体类型: $ target/debug/liquid-types examples/max3.ml 这将吐出有关液体环境(Γ)和子类型约束,以(a)开头的液体类型模板以及经过反复弱化它们的液体类型模板(min_a)以及精制类型的调试信息。通过运行液体类型推断。 例如,为上面的max推断的类型是: max_a1: F(x_a2: {ν: Int | 0 ≤ ν} → F(y_a3: {ν: Int | tr


【文件预览】:
liquid-types-master
----LICENSE-MIT(1KB)
----LICENSE-APACHE(11KB)
----build.rs(75B)
----Dockerfile(248B)
----z3(167B)
----src()
--------explicit.rs(569B)
--------main.rs(3KB)
--------hindley_milner.rs(17KB)
--------eval.rs(8KB)
--------implicit_parse.lalrpop(4KB)
--------lambdal.rs(20KB)
--------refined.rs(775B)
--------tok()
--------typed.rs(540B)
--------common.rs(2KB)
--------env.rs(4KB)
--------implicit.rs(492B)
--------liquid.rs(37KB)
----Cargo.toml(415B)
----examples()
--------fact.ml(89B)
--------max3.ml(63B)
--------list3.ml(67B)
--------max2.ml(41B)
--------list2.ml(36B)
--------sum.ml(96B)
----.gitignore(72B)
----README.md(2KB)
----.editorconfig(132B)

网友评论