mirror of
https://github.com/edwinb/Idris2-boot.git
synced 2024-12-18 10:21:39 +03:00
ed5b53d97f
Sorry for the less than informative title :). Lots going on here. It started as an attempt to fix unification to deal with laziness coercions in trickier places, but unearthed a couple of tricky and interconnected issues that are hard to unpick into a single patch. So, this fixes a few things: - default hints should only be resolved on the current elaboration (e.g. nested function definitions, not the outer definition which might not yet be complete) - delayed elaborators should be allowed to have nested delayed elaborators, which means disambiguation is a little bit better - we should delay elaborating arguments where the type isn't known yet, because later arguments may resolve the type, and we can use this to help with disambiguation/laziness coercions - other bits and pieces arising
16 lines
292 B
Plaintext
16 lines
292 B
Plaintext
1/2: Building Stuff (Stuff.idr)
|
|
2/2: Building IFace (IFace.idr)
|
|
IFace> True
|
|
IFace> False
|
|
IFace> Bye for now!
|
|
2/2: Building IFace1 (IFace1.idr)
|
|
IFace1> 0 a : Type
|
|
0 p : a -> Type
|
|
l : a
|
|
r' : p l
|
|
r : p l
|
|
l' : a
|
|
-------------------------------------
|
|
foo : Bool
|
|
IFace1> Bye for now!
|