Commit graph

156 commits

Author SHA1 Message Date
Martin Fredin
4aa72beccb Add missing clauses. Still broken 2023-05-05 09:02:17 +02:00
sebastian
1d551e5874 added alternative better implemenatation of checkBind 2023-05-05 00:36:18 +02:00
sebastianselander
c309c439cb Fixed bug when freshening types 2023-05-04 21:30:38 +02:00
sebastianselander
c7b76cbbb4 Fixed a bug of repeated application of same function to arguments of
differing types. More bufs appeared
2023-05-03 18:56:16 +02:00
sebastianselander
5a28f9d909 Bind now does correct subtype check. 2023-05-03 17:59:09 +02:00
sebastianselander
d7a09a720b Fixed more precise type annotation for monomorphizer 2023-04-29 17:55:18 +02:00
Martin Fredin
a2f61ea910 Fix missing pattern synonym 2023-04-29 15:56:01 +02:00
Martin Fredin
df1a5de04a Add module to sort definitions 2023-04-28 19:45:15 +02:00
Martin Fredin
38b88d36b5 Use throwError instead of error 2023-04-28 14:20:37 +02:00
Martin Fredin
b27988b4d8 Add checking for case 2023-04-28 14:04:54 +02:00
Martin Fredin
22ffdffa5a Fix pretty printer 2023-04-28 14:04:54 +02:00
sebastianselander
1a21698772 mono fixier 2023-04-27 12:57:36 +02:00
sebastianselander
e9852079ab bool now lit 2023-04-27 12:45:16 +02:00
Martin Fredin
8782556603 Fix types in pattersgit add .git add . 2023-04-27 12:22:30 +02:00
Martin Fredin
fc306d5f25 Fix pattern types 2023-04-27 12:22:30 +02:00
Martin Fredin
2cb8527848 Rename variables 2023-04-25 23:02:56 +02:00
Martin Fredin
e138cb27ec Simplify pattern matching 2023-04-25 22:59:43 +02:00
Martin Fredin
b5384bf2c3 Fix typo 2023-04-25 13:22:33 +02:00
Martin Fredin
2d96a50219 Change name 2023-04-24 10:47:33 +02:00
Martin Fredin
804d0da167 Check number of arguments in pattern match 2023-04-24 10:10:15 +02:00
sebastianselander
7ab0e65981 removed minor thing in EAdd 2023-04-17 16:07:46 +02:00
Martin Fredin
2b7715714e Use better names 2023-04-11 18:56:53 +02:00
Martin Fredin
9730552eab Remove parenthesis from EAnn 2023-04-11 13:46:54 +02:00
Martin Fredin
a109b3010d Fix bad inference on case expression, and make pretty for report 2023-04-08 21:52:57 +02:00
Martin Fredin
29de6c49e4 Fix naming 2023-04-08 13:39:00 +02:00
Martin Fredin
9cb4a620bb Fix redundant print paren 2023-04-08 13:38:30 +02:00
sebastian
0d30cb80e0 removed pretty printing of tvars 2023-04-06 14:20:27 +02:00
sebastianselander
90352449f4 added todo for semi monomorphization 2023-04-05 18:25:49 +02:00
Martin Fredin
9870802371 Add implicit foralls for bidir, update and unify pipeline 2023-04-05 17:26:52 +02:00
sebastianselander
12bca1c32d Added small comment about incorrect subtyping 2023-04-05 12:59:56 +02:00
Martin Fredin
0d6c5920a9 Fix type checker 2023-04-03 09:24:27 +02:00
sebastian
03a486410f Added somewhat detailed README 2023-04-02 13:42:47 +02:00
sebastian
aaaff776e0 Add some boiler plate for warnings 2023-04-02 00:42:42 +02:00
sebastian
6c180554ec Reworked order of inference, added prettifier for tvars etc etc. 2023-04-02 00:04:33 +02:00
sebastian
4b14cbdebf reverted Hindley-Milner type checker to before mutual recursion merge 2023-04-01 17:10:26 +02:00
sebastianselander
0749ca062d Merge in mutual recursion handling 2023-03-31 18:28:04 +02:00
sebastianselander
b7420b5adb Merge in mutual recursion handling 2023-03-31 18:27:30 +02:00
sebastianselander
c4f78ca37d Merge in mutual recursion handling 2023-03-31 18:26:58 +02:00
Martin Fredin
7d2a0e60d8 Fixes 2023-03-30 19:07:12 +02:00
Martin Fredin
72352d9619 Use use tevars for bind without type signatures, fix recursive functions 2023-03-30 18:46:55 +02:00
Martin Fredin
bbe0d77a19 Add signature of inferred bind to allow some mutually defined definitions 2023-03-30 12:35:47 +02:00
Martin Fredin
a37a52d9f8 Apply env to return type. fixes #14 2023-03-30 11:50:33 +02:00
sebastianselander
c4477d3df4 moved some funcs to aux, added a universal definition of int and char, updated usages in both tcs 2023-03-30 11:38:06 +02:00
sebastianselander
59676605cd moved injections back to state 2023-03-30 10:55:01 +02:00
sebastianselander
c34041860d duplicate signatures / declarations correct 2023-03-30 10:21:04 +02:00
sebastian
c4931c3996 Fixed bug in EApp, cleaned a bit, added todo for disallowing mutual recursion 2023-03-29 23:00:06 +02:00
Martin Fredin
aa1ff630a5 Fix double vars 2023-03-29 22:48:26 +02:00
sebastianselander
343be08a4a Tried solving bug, failed, added todo message, fixed printing 2023-03-29 18:47:54 +02:00
sebastianselander
36b6a8f781 removed trace 2023-03-29 17:32:21 +02:00
sebastianselander
4efe7cf9a2 inference does not depend on order. mutual recursion still not working correctly 2023-03-29 17:30:52 +02:00