mgt:Campora等人的“迁移渐进类型”的实现 源码
t Campora,Chen,Erwig和Walkingshaw的“迁移渐变类型”的实现( , )。 紧随形式主义,即标签最接近纸张。 有几项补充和更改: 一些微小的错误修复和与本文的分歧。 大多数情况下必须执行约束生成和统一。 约束生成采用一个可选的用渐进类型注释的术语,并返回一个完全用迁移类型注释的术语。 操作员超载。 要使用ocaml编译器,您需要通过OPAM安装mgt运行时软件包。 通过固定最容易做到这一点: $ cd ocaml $ opam pin add . 此后,运行mgt编译器时, cargo build和cargo run应该可以正常工作。 超载 考虑一下JS中的==这样的源操作: true == true 1 == 1 0 == false 这些都返回true 。 在目标语言中,实际上存在三个基础操作: ==b : bool ->
文件列表
mgt-main.zip
(预估有个64文件)
mgt-main
Cargo.toml
699B
Cargo.lock
26KB
eg
map_mono.mgt
194B
eq_poly_all.mgt
69B
bad_dyn.mgt
15B
eq_poly_bool.mgt
63B
xy_inconsistent.mgt
41B
adversarial
暂无评论