【文件属性】:
文件名称:hackett:Racket中类似Haskell的Lisp的WIP实现
文件大小:135KB
文件格式:ZIP
更新时间:2021-02-24 02:45:32
Racket
哈克特
Hackett尝试通过支持Racket的宏系统来实现类似Haskell的语言,该语言使用论文描述的技术构建。 这是目前极为工作正在进行中。
这是Hackett目前支持的一些功能:
双向类型推断
代数数据类型(ADT)
模式匹配
详尽检查
类型类(包括多参数类型类)
种类更多
高阶多态性
类型感知/类型定向宏
懒惰
中缀运算符的语法
范围类型变量
以下是一些最低发行版仍需要实现的功能:
孤立/重叠实例检测/预防
严格度分析
种类检查
最后,这是我最终要支持的功能(非详尽)集合:
功能依赖
行类型
GADTs
类型家庭
由于Hackett的实现方式,Haskell中许多语言功能的东西都可以在Hackett中派生出来。 实际上,Hackett的ADT不是原语,它们实际上是通过hackett/private/adt的data和case宏实现为库的。 其他事物,例如新类型派生
【文件预览】:
hackett-master
----.travis.yml(1KB)
----hackett-lib()
--------hackett()
--------info.rkt(193B)
----hackett()
--------info.rkt(140B)
----hackett-doc()
--------scribble()
--------scribblings()
--------info.rkt(177B)
----deploy-docs.sh(1KB)
----hackett-test()
--------hackett()
--------tests()
--------info.rkt(170B)
----LICENSE(738B)
----hackett-demo()
--------hackett()
--------info.rkt(196B)
----.gitignore(18B)
----CODE_OF_CONDUCT.md(3KB)
----README.md(3KB)