Folkert
bd7ad318cf
fix bug in guard constraint gen
2020-03-21 15:12:01 +01:00
Folkert
920928399a
type inference for pattern guards
2020-03-21 00:39:52 +01:00
Folkert
b43be95b19
add record_var to Access and Accessor
2020-03-14 01:13:44 +01:00
Folkert
e62ddc9ef5
make record variable names clearer
2020-03-14 01:01:14 +01:00
Folkert
38c93c001f
constrain whole_var
2020-03-13 23:34:29 +01:00
Folkert
e3e84ecb0c
fix If bug in uniq constraint gen
2020-03-13 13:06:56 +01:00
Folkert
aeeaf99c17
fix bug in constraint gen for If
...
the condition expression wasn't actually constrained
2020-03-13 13:06:56 +01:00
Folkert
fb8e8570bc
Merge remote-tracking branch 'origin/trunk' into num
2020-03-11 14:30:50 +01:00
Folkert
17348231fd
fix uniqueness Num inference
...
The variable in Num is the `a` in `Num a`. For Int/Float literals, it's a helper variable to generate better error messages
2020-03-11 14:18:26 +01:00
Folkert
9ba09c7d82
use Reason::NumLiteral in uniqueness inference
...
we can 'just' do that here because there is a var_store available. That isn't true for normal inference, where we would have to put the variable in during solving
2020-03-11 14:07:49 +01:00
Richard Feldman
d4dc0eb683
Implement uniqueness for (Num *)
2020-03-10 22:53:53 -04:00
Richard Feldman
3ecbe0325c
Plain number literals (e.g. 5
) are now Num *
2020-03-10 22:27:13 -04:00
Folkert
7fea957979
hardcode Bool
2020-03-10 14:50:35 +01:00
Richard Feldman
a2f5f6f9fb
Move solve and uniq tests into other crates
2020-03-06 18:24:37 -05:00
Folkert
4848eb5901
refactor introduced variables
...
This has lead to so many problems, so I made a special-purpose type for it
2020-03-06 23:55:31 +01:00
Folkert
fefac9580e
expose rigids introduced by builtins
...
they aren't used yet, because their names can 'leak'. Not sure what the best way forward is here
2020-03-06 13:48:52 +01:00
Richard Feldman
45bda2e0c7
Move unique_builtins into builtins crate
2020-03-06 01:47:04 -05:00
Richard Feldman
908e485fca
Move constrain and its deps into their own crates
2020-03-06 01:43:39 -05:00