Folkert
b29c7d6fb2
add Expect ir::Stmt node
2022-05-26 16:46:10 +02:00
Folkert
70df1ff9c7
Merge remote-tracking branch 'origin/trunk' into expect-report
2022-05-26 16:06:34 +02:00
Richard Feldman
4eec34becf
Update to use new square brace formatting
2022-05-22 23:15:54 -04:00
Richard Feldman
b4e949ca2e
Don't special-case so many U128 literals
2022-05-21 10:36:45 -04:00
Richard Feldman
489fb31cc2
Combine aarch64 and non-aarch64 mono size assertions
2022-05-21 00:53:47 -04:00
Richard Feldman
49aea9d639
Use [u8; 16] to avoid number alignment bumps
2022-05-21 00:53:47 -04:00
Ayaz Hafiz
cf56b5015a
Fix existing reporting tests
2022-05-19 18:23:02 -04:00
Ayaz Hafiz
6d19f31574
Remove mono-related changes for now
2022-05-19 18:21:43 -04:00
Ayaz Hafiz
3f4336d15a
Save ability specializations
...
Unfortunately not enough...
2022-05-19 18:21:42 -04:00
Ayaz Hafiz
95395ffc5f
Remove debugs
2022-05-19 18:21:41 -04:00
Ayaz Hafiz
f1e09fbe78
Pass ability specializations back down
2022-05-19 18:21:41 -04:00
Richard Feldman
0f3709da6f
Merge pull request #3090 from rtfeldman/expr-blank
2022-05-18 21:25:07 -04:00
Folkert
f285e7ce93
add a TypedHole node to Expr, for use in the editor
2022-05-18 16:39:24 +02:00
Ayaz Hafiz
6a9d7e07e7
Mono problems aren't a thing anymore
2022-05-18 10:07:59 -04:00
Richard Feldman
9bc1e320dc
Fix --release warnings
2022-05-15 21:50:49 -04:00
Ayaz Hafiz
710a10a29c
Check for invalid cycles after type solving recursive defs
...
Disallow cycles that pass through a non-function value. Since we
evaluate eagerly, having one such cycle means there is at least one path
in the program that (likely) has unbounded recursion. Of course we can't
be certain (halting problem), but it's very likely, and avoids stuff
like #1926 . Also, mono (as it's done today) won't work if things in a
cycle aren't functions.
Closes #1926
2022-05-11 14:57:01 -04:00
Ayaz Hafiz
9777886376
Fill out pattern traversals, add symbol discovery
2022-05-11 14:53:39 -04:00
Folkert
bfc424c0cc
WIP
2022-05-11 20:44:48 +02:00
Ayaz Hafiz
49c61a6f4a
Fix ignored field
2022-05-11 08:56:04 -04:00
Ayaz Hafiz
afb1f826b1
Correct walking of even specialized symbols in mono
2022-05-11 08:53:16 -04:00
Ayaz Hafiz
da00c47102
Opportunistically resolve specializations during solving
2022-05-11 08:53:15 -04:00
Ayaz Hafiz
1521711abd
Lift it all the way up
2022-05-09 16:45:39 -04:00
Ayaz Hafiz
7c1a6037d4
Lift another branch
2022-05-09 16:39:06 -04:00
Ayaz Hafiz
a59739bf20
More lifting
2022-05-09 16:36:13 -04:00
Ayaz Hafiz
bc5dc17ce9
Dead code
2022-05-09 16:29:20 -04:00
Ayaz Hafiz
6b9b64274b
Lift translation of lets
2022-05-09 16:23:00 -04:00
ayazhafiz
f2d3865315
Fix can AST walk
2022-05-08 15:17:59 -04:00
Ayaz Hafiz
798c28fccd
Dryasdust was a popular word in 1860
2022-05-08 15:08:20 -04:00
Ayaz Hafiz
e31e89ac66
Mark and clear specializations
2022-05-08 15:08:20 -04:00
Ayaz Hafiz
da604e978e
Use SpecializationId to mark specializations
2022-05-08 15:08:19 -04:00
Ayaz Hafiz
4a623a48dc
Simpl decoder a bit
2022-05-08 15:08:19 -04:00
Ayaz Hafiz
e08b5fa91e
Specializer->Resolver
2022-05-08 15:08:18 -04:00
Ayaz Hafiz
1a53daa665
Remove ability todo in mono
2022-05-08 15:08:18 -04:00
Ayaz Hafiz
8bff2875b0
Account for ability specialization in reuse_symbol
2022-05-08 15:08:18 -04:00
Ayaz Hafiz
474c18ab83
Handle recursion
2022-05-08 15:08:17 -04:00
Ayaz Hafiz
53c8ec3a57
Correctly aliasing of ability members
2022-05-08 15:08:17 -04:00
Ayaz Hafiz
645c0f2738
Don't eagerly walk down let bindings to specialize an ability
2022-05-08 15:08:17 -04:00
Ayaz Hafiz
025d501cfd
Determine ability specializations before walking a body
2022-05-08 15:08:17 -04:00
Ayaz Hafiz
edee222763
Add AbilityMember can variant for resolving ability specializations
2022-05-08 15:08:16 -04:00
Ayaz Hafiz
c1b1f60630
Coupon cutting
2022-05-08 15:08:16 -04:00
Ayaz Hafiz
b5efd830e5
Solve and gen ability members that bind other able variables
2022-05-08 15:07:27 -04:00
Folkert
7be41d8c09
remove unused variables from let/letrec
2022-05-08 20:06:00 +02:00
Ayaz
dd51479764
Merge pull request #3009 from rtfeldman/list-map-ownership
...
List map ownership
2022-05-07 19:59:15 -04:00
Ayaz Hafiz
50bbf1349d
Revert "Drop another unused branch"
...
This reverts commit 19175a85d8
.
2022-05-07 15:36:11 -04:00
Ayaz Hafiz
19175a85d8
Drop another unused branch
2022-05-07 15:04:35 -04:00
Ayaz Hafiz
7e58c4ddea
Unused var
2022-05-07 15:01:25 -04:00
Ayaz Hafiz
02bff35203
Remove dead let-identifier code
2022-05-07 15:01:04 -04:00
Folkert de Vries
201d09d9bf
Merge branch 'trunk' into list-map-ownership
2022-05-07 11:59:51 +02:00
Ayaz Hafiz
2a4ed33530
We love the eta reductions
2022-05-06 14:32:54 -04:00
Ayaz Hafiz
2aeb06c9cb
Spellcheck
2022-05-06 12:21:42 -04:00