Folkert
97f1548a24
add tests
2020-03-13 15:16:27 +01:00
Folkert
735358c577
implement isEq for Float/Int
2020-03-13 15:15:10 +01:00
Folkert
6651180283
implement Bool in llvm
2020-03-13 15:13:43 +01:00
Folkert
a3b1ec3be0
pull tags/fields from the ext_var during unification
2020-03-13 15:12:32 +01:00
Folkert
9ef4a6d891
fix bug in uniq isEq type
...
it always wanted Boolean arguments ...
2020-03-13 13:06:56 +01:00
Folkert
e01a6bab9b
improve error reporting by mismatch! macro
2020-03-13 13:06:56 +01:00
Folkert
a7af366c3a
new code gen for Cond
2020-03-13 13:06:56 +01:00
Folkert
263e4b4b6c
add tests for mono If
2020-03-13 13:06:56 +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
f02193b962
fix new clippy warnings
2020-03-12 22:56:58 +01:00
Folkert
4da01c720e
monomorphize the ext_var of records/tag unions
2020-03-12 21:32:58 +01:00
Folkert
f372e4d108
move fresh symbol generation into Env
2020-03-12 16:55:45 +01:00
Folkert
de40cf62f3
special-case anonymous functions
2020-03-12 14:03:26 +01:00
Folkert
cfb3952fbf
put patterns into PartialProc
...
So Load(symbol) finds a defined value
2020-03-12 13:20:26 +01:00
Folkert
9761aabe65
add is_empty to Procs
2020-03-12 12:58:03 +01:00
Richard Feldman
f74471012c
Improve an error message
2020-03-12 00:53:24 -04:00
Richard Feldman
723ef8e6d0
Add a missing register_debug_idents call
2020-03-12 00:43:04 -04:00
Richard Feldman
494a8574bf
Drop obsolete add_closure function
2020-03-12 00:40:07 -04:00
Richard Feldman
9b68fbe3c9
Add PRETTY_PRINT_DEBUG_SYMBOLS
2020-03-12 00:39:53 -04:00
Richard Feldman
173ba925ff
Formatting
2020-03-12 00:39:28 -04:00
Richard Feldman
db362f6df0
Reproduce named identity function bug
2020-03-12 00:31:53 -04:00
Richard Feldman
9db7d2229a
Remove a .clone() on procs
2020-03-11 22:18:44 -04:00
Folkert
c9644e4ee7
use snapshots to remove clone on Subs
2020-03-12 02:42:30 +01:00
Folkert
3dbaac210a
add snapshot functions to Subs
2020-03-12 02:38:38 +01:00
Richard Feldman
cf5e3f92a5
Have mono::Env store &mut Subs
2020-03-11 21:36:27 -04:00
Richard Feldman
2ad70d44a2
Rename Attr module to #Attr, drop #Attr.@Attr
2020-03-11 21:15:30 -04:00
Richard Feldman
df78068e81
Implement int and float subtraction
2020-03-11 21:10:41 -04:00
Richard Feldman
9fcfa90bff
Change capitalization
2020-03-11 21:06:08 -04:00
Richard Feldman
762b2c7b10
use IntOrFloat::*
2020-03-11 21:03:58 -04:00
Richard Feldman
a0c4e91792
Rename List.set_in_place to List.#setInPlace
2020-03-11 20:53:39 -04:00
Richard Feldman
21e4eb505a
Implement and test Float.#add
2020-03-11 20:53:35 -04:00
Richard Feldman
523282e7bc
Implement Int.#add
2020-03-11 20:53:32 -04:00
Richard Feldman
649575fab8
Improve some error messages
2020-03-11 19:48:19 -04:00
Richard Feldman
74b58db477
Use Procs::default()
2020-03-11 19:45:12 -04:00
Folkert
bb9c9d423a
make Procs a struct
2020-03-12 00:40:10 +01:00
Folkert
2d0649fa66
attempt fix for gen tests
2020-03-11 23:13:32 +01:00
Folkert
a037173cdb
complete the Content hashing
2020-03-11 23:00:44 +01:00
Folkert
f7a2be113e
monomorphize closures
2020-03-11 22:03:01 +01:00
Folkert
5c9cf0ef37
add type hash function
2020-03-11 22:01:56 +01:00
Folkert
4c9f2c1b6e
monomorphize addition
2020-03-11 15:24:44 +01:00
Folkert
fb8e8570bc
Merge remote-tracking branch 'origin/trunk' into num
2020-03-11 14:30:50 +01:00
Folkert
d47d409a92
clean up to_int_or_float
...
with the changes from the previous commit, this now works as it should
2020-03-11 14:25:16 +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
55623605f3
clippy mcclip
2020-03-11 00:11:23 -04:00
Richard Feldman
df85c086ab
Fix test_uniq_solve
2020-03-11 00:07:19 -04:00
Richard Feldman
c0837eca1c
Use constantNum over constantInt in load tests
2020-03-10 23:11:49 -04:00
Richard Feldman
a033f325f4
Support integer (Num *) patterns in jump tables
2020-03-10 23:08:26 -04:00
Richard Feldman
a0d762d1e5
Fix more mono::expr (Num *) cases
2020-03-10 23:06:11 -04:00