Visa enkel post

dc.contributor.authorHughes, William
dc.contributor.authorJarmar, Jacob
dc.contributor.authorLarsson, Johan
dc.contributor.authorLindbom, David
dc.contributor.authorNorgren, Björn
dc.contributor.authorWikström Schützer, Johan
dc.date.accessioned2015-06-25T11:57:00Z
dc.date.available2015-06-25T11:57:00Z
dc.date.issued2015-06-25
dc.identifier.urihttp://hdl.handle.net/2077/39609
dc.description.abstractThe following report aims to give insight into the design and implementation of a statically typed functional language for the Erlang virtual machine, discussing how such 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 implement a compiler for such a language. Over the course of the project a prototype language and a compiler for that language were developed. The project followed an iterative development process with Scrum as a basis. Notable modules of the compiler are the parser generated from a BNF grammar, the type checker implementing a Hindley-Milner type system and the code generator generating Core Erlang source code. The result of the project is Hopper, a basic functional programming language with an accompanying compiler, featuring polymorphic algebraic data types (ADTs), pattern matching and lambdas. The language also has a module system and some integration with Erlang. In conclusion, the project was largely successful in its mission to create a typed functional language on the Erlang VM and has the potential to be developed further.sv
dc.language.isoengsv
dc.titleThe Hopper language- A Haskell-like language on the Erlang VMsv
dc.typetext
dc.setspec.uppsokTechnology
dc.type.uppsokM2
dc.contributor.departmentGöteborgs universitet/Institutionen för data- och informationsteknikswe
dc.contributor.departmentUniversity of Gothenburg/Department of Computer Science and Engineeringeng
dc.type.degreeStudent essay


Filer under denna titel

Thumbnail

Dokumentet tillhör följande samling(ar)

Visa enkel post