Commit Graph

82 Commits

Author SHA1 Message Date
Folkert
a82cc7f28f fix weird region in error messages 2020-07-21 16:20:03 +02:00
Folkert
b45b39af5e optional fields improvements 2020-07-21 15:25:21 +02:00
Folkert
e93c04a8ce improved error messages for function definitions 2020-07-20 21:38:21 +02:00
Folkert
ae966c8933 constraint default unique 2020-07-20 13:44:45 +02:00
Folkert
36574e6ff7 constrain the default 2020-07-20 13:28:20 +02:00
Richard Feldman
7330e82f75 Constrain optional fields 2020-07-18 14:51:18 -04:00
Richard Feldman
8a2d6004ee Constrain uniquness for optional fields 2020-07-18 13:45:12 -04:00
Richard Feldman
1409421de2 Constrain optional record fields 2020-07-18 13:45:12 -04:00
Richard Feldman
8fc9a450b3 Canonicalize optional record fields 2020-07-18 13:12:13 -04:00
Folkert
d27dcceef2 use index-based approach for Apply 2020-07-18 01:23:35 +02:00
Folkert
25329ad672 get rid of Container 2020-07-18 00:57:27 +02:00
Folkert
ce8bcbb5ed introduce Record and Apply Update and Access 2020-07-18 00:52:22 +02:00
Folkert
6e7ec8cd2c fix other test failures 2020-07-18 00:18:55 +02:00
Richard Feldman
3d9dba251e Fix new Rust 1.45 clippy warning 2020-07-16 19:48:58 -04:00
Richard Feldman
1cd49689c2 Merge remote-tracking branch 'origin/trunk' into low-level-ops 2020-07-07 21:09:50 -04:00
Folkert
0c7a4179aa report malformed int and float patterns 2020-07-04 20:29:37 +02:00
Folkert
474d164a8c fix some comments 2020-07-03 16:21:09 +02:00
Folkert
744b8ce32b fix todos regarding InvalidCycle 2020-07-03 15:42:24 +02:00
Folkert
36e6950daa ensure VarId always encodes root var
otherwise variables with the same root, but different values would be different once imported in another module
2020-06-30 15:03:30 +02:00
Folkert
c589be43c6 fix triple (or more) mutualy recursive type aliases 2020-06-30 14:25:47 +02:00
Folkert
5483ec819f fix infinite unfolding of recursive tag union 2020-06-30 13:54:16 +02:00
Richard Feldman
8c96d12661 Merge trunk 2020-06-29 22:10:46 -04:00
Folkert
41621bc509 fix test outputs
in some cases for aliases the outputs are not entirely correct yet. That's future work
2020-06-27 21:01:51 +02:00
Folkert
79f01e0604 loads of things 2020-06-27 16:20:30 +02:00
Folkert
e5997c4047 fix mutual recursive types
I'll write a bit more about this in the PR message
2020-06-26 01:03:55 +02:00
Folkert
055b01c463 rewrite uniqueness logic 2020-06-24 23:06:34 +02:00
Richard Feldman
f350c0ed52 Fix List.len monomorphization 2020-06-23 21:14:23 -04:00
Richard Feldman
dd8dff0f9e Fix some unary ops 2020-06-23 19:17:39 -04:00
Richard Feldman
88990c8711 Move Int and Float modules into Num 2020-06-22 23:25:38 -04:00
Richard Feldman
56c637e399 Fix some constraint gen 2020-06-21 16:48:44 -04:00
Richard Feldman
461e166254 wip 2020-06-20 13:59:04 -04:00
Richard Feldman
dec5c3a062 Get low-level ops compiling 2020-06-19 20:07:04 -04:00
Richard Feldman
e49b43d376 Extract constrain_imports & pre_constrain_imports 2020-06-19 11:02:10 -04:00
Richard Feldman
1b3b9ee1c4 Merge remote-tracking branch 'origin/trunk' into specialize-separately 2020-06-13 23:54:30 -04:00
Richard Feldman
269da82840 Make VarStore no longer use atomics 2020-06-13 21:59:01 -04:00
Richard Feldman
245a9fc951 Merge remote-tracking branch 'origin/trunk' into specialize-separately 2020-06-13 21:03:38 -04:00
Richard Feldman
a4338f0406 Remove lots of unnecessary clones (thanks clippy!) 2020-06-07 15:43:07 -04:00
Richard Feldman
0a9989e75f wip 2020-06-06 23:41:12 -04:00
Richard Feldman
887ec9860a wip 2020-05-26 21:19:46 -04:00
Richard Feldman
c47dc57fc2 Appease clippy 2020-05-26 00:41:57 -04:00
Richard Feldman
4295dec955 Fix load_builtin_aliases ordering 2020-05-26 00:04:59 -04:00
Richard Feldman
c386192e8b Reorganize when solving and constraint gen happen 2020-05-26 00:04:42 -04:00
Richard Feldman
ce9e7a91f6 Clean up some Cargo.toml files 2020-05-03 21:37:59 -04:00
Richard Feldman
1c1fee7e31 Trim trailing space off pretty_assertions dep 2020-04-16 19:24:24 -04:00
Folkert
63bc923b37 remove panic 2020-04-13 22:54:24 +02:00
Folkert
7632a4b484 highlight code snippets better 2020-04-12 20:59:16 +02:00
Folkert
d15bd07bf4 de-alias when diffing with a non-alias
When one of the types in a comparison is an alias, elm does not de-alias it.
That is really annoying if e.g. the alias is of a record and you used an invalid field: the field suggestion error does not kick in
2020-04-11 23:57:00 +02:00
Folkert
2811f978a4 make a Index data type 2020-04-11 20:40:25 +02:00
Folkert
ab19529077 record update hints 2020-04-11 14:55:12 +02:00
Folkert
7e4e3c93d5 cleanup 2020-04-07 21:12:56 +02:00