/MIML

MIML Interpreter for JiPP

Primary LanguageHaskellMIT LicenseMIT

MIML (good/Mini Interpreted ML) or (good/MIM Language) or (good/Mega Interpreter Made by Leon)

MIML is a simple functional language with the syntax similar to Standard ML. The intention was that it will meet all the requirements for 24 points and use Hindley-Miller algorithm for type inference, but it's not present in the first version. I'll update it later

It requires ghc >= 7.10 to run, but it's installed on students and Makefile knows about it. Simple make will be enough. You can also run test.sh which runs all tests.

Currently it supports:

It will support in the next version:

  • Builtin functions
  • Multi parameter lambdas
  • Polymorphic types
  • ADTs
  • Static type checking
  • Pattern matching

It will not support:

  • GADT's
  • Existential types
  • Rank > 2 Types

Error handling:

  • I think, that error messages are quite good now, but I'll make them even better in future version

#BNF grammar #Some examples of correct programs #Some examples of incorrect programs #Testing script test.sh