Compilers
Languages and Compilers:
- cDuce - cDuce is a modern XML-oriented functional language with innovative features.
- Compcert C Compiler - It is a C Compiler supporting most of the ISO C90 and C99 / ANSI C features.
- Eff Programming Language - Eff is a functional language with handlers of not only exceptions, but also of other computational effects such as state or I/O.
- Hack Programming Language
- Haxe Programming Language
- Neko Programming Language - Originally the compiler was written in OCaml.
- Mezzo Programming Language - Mezzo is a programming language in the ML tradition, which places strong emphasis on the control of aliasing and access to mutable memory.
- OCaml-Java - OCaml to Java bytecode compiler.
- Opa Programming Language
- Rhine – A Lisp on LLVM written in OCaml.
- Rust Programming Language - Originally written in OCaml before bootstrapping.
- Quick C-- Target Language - It is now a dead project. Github Repo. Alternative website.
- tis-interpreter - An interpreter for finding subtle bugs in programs written in standard C
- Reason - Friendly syntax & toolchain for OCaml by Facebook.
- Others - Some other compilers implemented in OCaml, quite a few dead now.
Parser and Lexer Generators:
- Opal – Self-contained monadic parser combinators for OCaml.
- Sedlex is a modern, encoding-agnostic (read: Unicode-supporting) lexer generator (the ppx-based successor to ulex.)
- Menhir – Menhir is a LR(1) parser generator for OCaml.
-
- See ocaml-parsing for a clearer example of using Menhir and Sedlex to produce a useful parser,
- … and Obelisk, a neat project to produce readable LaTeX, HTML, or plain-text EBNF-style documentation for your grammar.
-
- ocamllex/ocamlyacc – lex and yacc implementation for OCaml.
- Angstrom - Parser combinators built for speed and memory efficiency