文件名称:hm
文件大小:6KB
文件格式:ZIP
更新时间:2024-03-28 07:54:45
嗯 一种用于类似C的微型语言的原型/在制品/玩具的编译器,它添加了一些功能并删除了大多数其他功能。 灵感来源: 初步计划: C喜欢语义(也许编译为C?)。 函数局部类型推断。 斯巴达人的朴素。 未来的想法: 自托管。 拥有的价值观。 C兼容的泛型。 范例程式码 extern printf(s: int, ...) -> int; fn main (argc: int, argv: **char) -> int { let s = argv[0]; printf("hello from %s!", s); 0 } C兼容的泛型 关键思想是,如果通过C代码中的void *访问泛型类型,则允许在导出的函数中使用泛型类型。 考虑一下malloc的通用定义: fn malloc(n: size = sizeof('t)) -> *'t 现在我们可以通过一些简单的方式调
【文件预览】:
hm-master
----infer.janet(4KB)
----parse.janet(4KB)
----main.janet(293B)
----unify.janet(2KB)
----README.md(1KB)
----lex.janet(2KB)
----test()
--------0002-types.janet(186B)
--------0001-sanity.hm(25B)