Commit graph

24 commits

Author SHA1 Message Date
Samuel Hammersberg
21b1ba7b1f Replaced # with $ 2023-04-07 16:01:23 +02:00
Martin Fredin
9870802371 Add implicit foralls for bidir, update and unify pipeline 2023-04-05 17:26:52 +02:00
sebastian
ec8d554af1 Disabled shadowing in pattern match with nice error message, added aux functions 2023-04-01 18:45:08 +02:00
sebastianselander
343be08a4a Tried solving bug, failed, added todo message, fixed printing 2023-03-29 18:47:54 +02:00
Martin Fredin
ac3f222753 Add bidirectional type checker, lambda lifter. 2023-03-27 16:07:11 +02:00
sebastianselander
3c2cb1a713 new good version works 2023-03-24 17:06:40 +01:00
sebastianselander
ce3971cf75 renamed stuff 2023-03-24 12:24:08 +01:00
sebastianselander
3371c3a146 Remade lets with bind & improvements 2023-03-24 11:21:51 +01:00
sebastianselander
519ed8af6c Added monadic fail to renamer 2023-03-23 16:06:09 +01:00
sebastianselander
8d1330ad42 typechecker is compatible with one extra addition to the spec 2023-03-23 11:13:48 +01:00
sebastian
3335ab7a57 compatible, EId rule for parsing is not working, testing not done yet 2023-03-22 21:26:14 +01:00
sebastianselander
936cb1301f new grammar and adapted renamer 2023-03-22 12:45:51 +01:00
sebastianselander
24007313cb added shadowing for ECase in Renamer 2023-03-22 10:10:11 +01:00
sebastianselander
9c2f52f8bb fixed bug where bound variable didn't exist in case 2023-03-06 11:27:17 +01:00
sebastianselander
03d7080396 pattern matching works? have to test more 2023-03-03 11:46:54 +01:00
sebastianselander
05313652f9 unit tests, started on pattern matching 2023-02-28 17:15:48 +01:00
sebastianselander
2f45f39435 Incorporated most of main, as well as started on quickcheck 2023-02-27 11:12:05 +01:00
sebastianselander
06e65de235 started on a test suite 2023-02-23 11:54:35 +01:00
sebastianselander
8b5cd3cf9a Remade the algorithm myself. Still some bugs. 2023-02-18 23:08:27 +01:00
sebastianselander
f188cffb8d Unification part works (probably). Have a hard time understanding it. 2023-02-17 18:42:50 +01:00
sebastianselander
f1b77a7efa Refactored. Cleaner version, ala Martin version 2023-02-15 19:52:52 +01:00
sebastianselander
5d247057f5 Minor rewrite of tc. Some bugs still left 2023-02-14 22:03:56 +01:00
sebastianselander
6218efac20 Renamer done.
It renames bound variables to numbers, converts let to lambda, and
removes all variables from binds
2023-02-14 16:44:38 +01:00
sebastianselander
73dc2e4b6a Inference on most expressions. HM based.
Still have to figure out how to infer type of lambda variables, as well
as how function application on polymorphic should work
2023-02-13 12:17:49 +01:00