Applications and libraries/Compilers and interpreters
Jump to navigation
Jump to search
Haskell, with its support for pattern matching on data structures, generic structure traversals, and expressive type system, is popular for implementing compilers and intepreters. Here's a selection of languages implemented in Haskell.
Large languages
Haskell
- GHC
- GHC, The Glasgow Haskell Compiler, is written in Haskell
- Yhc
- Yhc, The York Haskell Compiler, is written in Haskell
- Jhc
- Jhc is a Haskell compiler which aims to produce the most efficient programs possible via whole program analysis
- nhc98
- A compiler for Haskell 98, written in Haskell
- pH
- A parallel version of Haskell from MIT.
Perl
- Pugs
- Pugs is an implementation of Perl 6, written in Haskell. It aims to implement the full Perl6 specification.
Ruby
- RType
- RType is a Ruby interpreter written in Haskell
Scheme
- Write Yourself a Scheme in 48 Hours
- A Haskell Tutorial.
Emacs Lisp
- Helisp
- The beginnings of an Emacs lisp compiler/interpreter.
Epigram
- Epigram
- Epigram is a prototype dependently typed functional programming language
Curry
- [http://danae.uni-muenster.de/~lux/curry/ The M�nster Curry Compiler]
- A native code compiler for the declarative multi-paradigm language Curry, written in Haskell
Bluespec
- Bluespec
- A compiler for a hardware description language translating a Haskell-like (but with System Verilog syntax these days) language to Verilog.
Small languages
Baskell
- Baskell
- An interpreter for a small functional programming language. Supports strict and non-strict evaluation, and type inference. Useful for teaching purposes.
Unlambda
- Unlambda.hs
- An implementation of unlambda in Haskell
BF
- BF.hs
- An implementation of BF in Haskell
Untyped lambda calculus
- LMEngine
- An implementation of the untyped lambda calculus
This page contains a list of libraries and tools in a certain category. For a comprehensive list of such pages, see Applications and libraries.