Skip to content
/ mt Public

Master thesis on developing a static type checker for Erlang

License

Notifications You must be signed in to change notification settings

nachivpn/mt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

etc

Erlang Type Checker

Basics

# Installation
git clone https://github.com/nachivpn/mt.git
cd mt/etc/ && rebar3 escriptize

# Simple usage evaluation example
./etc hello.erl

# Partial evaluation + Type Inference example
./etc +pe hello_pe.erl

# To see the result of code generated by partial evaluation 
./etc +pe -P hello_pe.erl #produces hello_pe.P file

# (only) partial evaluation example
./etc +pe +noti -P hello_pe.erl

Documentation

Currently there's very little documetation on the source code and implementation details. However, the thesis work has been documented closely at multiple stages. If you're curious, check out the reports section: https://github.com/nachivpn/mt/tree/master/reports

Disclaimer

This project is the result of a master thesis at Chalmers University. The implementation is a prototype to demonstrate the scientific ideas and has not been tested thouroughly. The type checker supports a large part of the language, but the partial evaluator doesn't and may break easily. It is not at all production ready!

About

Master thesis on developing a static type checker for Erlang

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published