The Hopper language- A Haskell-like language on the Erlang VM
Abstract: The following report aims to give insight into the design and implementation of astatically typed functional language for the Erlang virtual machine, discussing howsuch an implementation may be approached and whether it appears to be feasible.The primary goal of the project was to design a grammar specification and implementa compiler for such a language.Over the course of the project a prototype language and a compiler for thatlanguage were developed. The project followed an iterative development processwith Scrum as a basis. Notable modules of the compiler are the parser generatedfrom a BNF grammar, the type checker implementing a Hindley-Milner type systemand the code generator generating Core Erlang source code.The result of the project is Hopper, a basic functional programming languagewith an accompanying compiler, featuring polymorphic algebraic data types (ADTs),pattern matching and lambdas. The language also has a module system and someintegration with Erlang.In conclusion, the project was largely successful in its mission to create a typedfunctional language on the Erlang VM and has the potential to be developed further.
AT THIS PAGE YOU CAN DOWNLOAD THE WHOLE ESSAY. (follow the link to the next page)