2022-01-25 21:00:12 +01:00
|
|
|
*) Fix user defined type stuff
|
2022-01-23 12:00:17 +01:00
|
|
|
|
2022-01-25 21:00:12 +01:00
|
|
|
*) Implement top level stuff
|
2022-01-23 12:00:17 +01:00
|
|
|
|
2022-01-25 21:00:12 +01:00
|
|
|
*) Rewrite type checker to collect and then solve constraints
|
|
|
|
|
|
|
|
*) Extend it to allow for referencing declarations "further down" in file, but make sure it
|
2022-01-23 12:00:17 +01:00
|
|
|
terminates by forbidding corecursion (simply done by building a reference graph and then looking at it)
|
|
|
|
|
2022-01-25 21:00:12 +01:00
|
|
|
*) Add Kind env and type parameters
|
|
|
|
|
|
|
|
*) Type annotated tree?
|
|
|
|
|
|
|
|
*) Make SECD machine good enough to execute it
|
2022-01-23 12:00:17 +01:00
|
|
|
|
2022-01-25 21:00:12 +01:00
|
|
|
*) Write backend for SECD machine code
|
2022-01-24 20:58:00 +01:00
|
|
|
|
2022-01-25 21:00:12 +01:00
|
|
|
*) Pattern matching to recursor syntactic sugar
|
2022-01-24 20:58:00 +01:00
|
|
|
|
2022-01-25 21:00:12 +01:00
|
|
|
*) Record types
|