Bowtie is a small programming language for educational use.
It's a subset of Haskell (in fact a subset of Elm!) with algebraic types, pattern matching, recursive 'let', parametric polymorphism, and not much else.
./bowtie: Reference implementation
./spec: Description of the language
./example-app and ./example-lib: Bowtie code
./bowtie-js: JavaScript transpiler