Skip to content

Latest commit

 

History

History
46 lines (39 loc) · 2.12 KB

README.md

File metadata and controls

46 lines (39 loc) · 2.12 KB

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