sebastian
|
4f21a58200
|
more symbols and changed err msg
|
2023-05-04 23:00:51 +02:00 |
|
sebastian
|
0dc06eaf80
|
Parens removed on types and infix symbols work almost, just need to adapt in LLVM
|
2023-05-04 22:50:15 +02:00 |
|
sebastian
|
122bff7436
|
Sugar has arrived
|
2023-05-04 21:29:24 +02:00 |
|
Martin Fredin
|
9730552eab
|
Remove parenthesis from EAnn
|
2023-04-11 13:46:54 +02:00 |
|
Martin Fredin
|
9870802371
|
Add implicit foralls for bidir, update and unify pipeline
|
2023-04-05 17:26:52 +02:00 |
|
Martin Fredin
|
cc5755c3a9
|
Add layout grammar
|
2023-04-03 09:24:13 +02:00 |
|
sebastian
|
6c180554ec
|
Reworked order of inference, added prettifier for tvars etc etc.
|
2023-04-02 00:04:33 +02:00 |
|
sebastianselander
|
8910d8adc0
|
temporary commit incase of breakage
|
2023-03-28 17:15:18 +02:00 |
|
sebastianselander
|
22783cf817
|
Removed custom Character in favor of BNFC Char
|
2023-03-27 16:14:40 +02:00 |
|
Martin Fredin
|
ac3f222753
|
Add bidirectional type checker, lambda lifter.
|
2023-03-27 16:07:11 +02:00 |
|
sebastianselander
|
41fc863658
|
added PEnum
|
2023-03-24 17:39:34 +01:00 |
|
sebastianselander
|
3c2cb1a713
|
new good version works
|
2023-03-24 17:06:40 +01:00 |
|
sebastianselander
|
38680a4dcb
|
adapted new tree to fuck with samuel
|
2023-03-24 16:10:52 +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
|
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
|
914855e20f
|
working on adapting the typechecker
|
2023-03-22 17:52:39 +01:00 |
|
sebastianselander
|
936cb1301f
|
new grammar and adapted renamer
|
2023-03-22 12:45:51 +01:00 |
|
sebastianselander
|
2401b6437b
|
continued work pattern matching
|
2023-03-02 16:05:43 +01:00 |
|
sebastianselander
|
05313652f9
|
unit tests, started on pattern matching
|
2023-02-28 17:15:48 +01:00 |
|
sebastianselander
|
bbf6e159c7
|
Type inference/checking on ADTs mostly complete(?). Still have to test
|
2023-02-27 17:22:42 +01:00 |
|
sebastianselander
|
2f45f39435
|
Incorporated most of main, as well as started on quickcheck
|
2023-02-27 11:12:05 +01:00 |
|
sebastianselander
|
8b5cd3cf9a
|
Remade the algorithm myself. Still some bugs.
|
2023-02-18 23:08:27 +01:00 |
|
sebastianselander
|
7619e36c60
|
Inference works better now. Still work to do. Should use proper library
|
2023-02-15 17:40:18 +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
|
200a9e57ed
|
Fixed EId, more work on other expressions needed
|
2023-02-14 10:12:38 +01:00 |
|
sebastianselander
|
c10d7703ad
|
Progression on type checker ;)
|
2023-02-13 19:03:06 +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 |
|
sebastianselander
|
f4f1786be3
|
Revert "Merge branch 'typechecking' into codegen-martin-3"
This reverts commit e000e5159f, reversing
changes made to 3ac8377fa0.
|
2023-02-10 10:46:09 +01:00 |
|
sebastianselander
|
e000e5159f
|
Merge branch 'typechecking' into codegen-martin-3
|
2023-02-10 10:33:15 +01:00 |
|
Martin Fredin
|
ce31e4d490
|
Fix first unnecessary supercombinator
|
2023-02-09 17:53:39 +01:00 |
|
Martin Fredin
|
1f47288fcf
|
Implement lambda lifting passes: freeVars, abstract, and rename
|
2023-02-09 05:19:51 +01:00 |
|
sebastianselander
|
be3fcfc9e3
|
Typeinference/checking on expressions done.
Simplified the typechecker a bit, removed GADT solution for now.
Still not fully working
|
2023-01-24 16:39:22 +01:00 |
|
sebastianselander
|
b6b2dfa25f
|
Some work on a typechecker
|
2023-01-23 17:17:06 +01:00 |
|
Martin Fredin
|
43e0f67fe2
|
Fix conflict
|
2023-01-22 20:16:03 +01:00 |
|
Martin Fredin
|
64ee4dc432
|
Implement basic interpreted language
|
2023-01-20 14:12:04 +01:00 |
|