LanguageEtudes

所属分类:编程语言基础
开发工具:OCaml
文件大小:0KB
下载次数:0
上传日期:2024-02-29 22:34:49
上 传 者sh-1993
说明:  编程语言的组件,全部在独立文件中实现
(Components of programming languages, all implemented in self-contained files)

文件列表:
ocaml/
scala/
.ocamlformat
.scalafmt.conf

# Language etudes Repository accomodating a bunch of single-file typechecker/interpreter/compiler implementations. ## Table of contents ### Interpreters | File | Description | |------|-------------| | [scala/nbe.sc](https://github.com/RiscInside/LanguageEtudes/blob/master/scala/nbe.sc) | Plain and CPS-transformed NbE lambda calculus interpreters in Scala, along with a performance comparison. Run with `scala-cli run nbe.sc -- 1000 5`. | | [ocaml/nbe.ml](https://github.com/RiscInside/LanguageEtudes/blob/master/scala/nbe.sc) | NbE interpreters for LC in Ocaml. Run with `ocamlbuild ocaml/nbe.native --`. | ### Typecheckers | File | Description | |------|-------------| | [scala/holes.sc](https://github.com/RiscInside/LanguageEtudes/blob/master/scala/holes.sc) | Basic typechecker for a bare bones dependently typed language using NbE. Based on [elaboration-zoo/03-holes](https://github.com/RiscInside/LanguageEtudes/blob/master/https://github.com/AndrasKovacs/elaboration-zoo/tree/master/03-holes). Has no frontend yet, but you can run some examples with `scala-cli run scala/holes.sc` | ## Resources - [Elaboration Zoo](https://github.com/RiscInside/LanguageEtudes/blob/master/https://github.com/AndrasKovacs/elaboration-zoo) - [Checking Dependent Types with Normalization by Evaluation: A Tutorial (Haskell Version)](https://github.com/RiscInside/LanguageEtudes/blob/master/https://davidchristiansen.dk/tutorials/implementing-types-hs.pdf)

近期下载者

相关文件


收藏者