Ernest Ng's repositories
ocaml-empty-project
An opinionated OCaml starter template repo
parser-combinator-class
Teaching materials on Parser Combinators, designed for UPenn's Intro to Haskell class
100-exercises-to-learn-rust
A self-paced course to learn Rust, one exercise at a time.
base
Standard library for OCaml
book
V2 of Real World OCaml
church-rossser
Proof of the Church-Rosser theorem using locally nameless representation in Coq
cis6700_lc_encodings
Materials for a lecture on λ calculus encodings (CIS 6700, Spring 2023)
cs242-f19
Stanford's CS 242 PL course (Fall 2019)
defunc
"Defunctionalization at Work" (Danvy & Nielsen 2001)
effect-handler-tutorial
Concurrent Programming with Effect Handlers
higher-rank-type-inference
Implementation of the Hindley-Damas-Milner type inference algorithm (described in the "Practical type inference for arbitrary-rank types" paper)
metalib
The Penn Locally Nameless Metatheory Library
modmod
A modular module system by Xavier Leroy
ngernest.github.io
Source code for ngernest.github.io
ocaml-ci
A CI for OCaml projects
pearlcheck
Code from "A simple incremental development of a property-based testing tool" (Braquehais et al. 2017)
pi-forall
A demo implementation of a simple dependently-typed language
ppx_derive_runtime_experiments
Minimal working example of the example code in Jane Street's ppx_derive_at_runtime library
qcheck-stm
PBT testsuite and libraries for testing multicore OCaml
terraform-demo
Terraform Demo
well-typed-term-generator
A OCaml generator for well-typed terms (that use their arguments).