Jonathan Immanuel Brachthäuser
Jonathan Immanuel Brachthäuser
Soooo, I thought about it for a few minutes now and came to the following conclusion (just rephrasing things already said in this issue): Bidirectional resumes (`resume { stmt }`)...
No, sadly not. The written Effekt saga so far was only "no first class functions (OOPSLA 2020)" -> "first-class functions are back through boxes (OOPSLA 2022)" and then a lot...
Here is an alternative proposal in three steps: 1. make `resume` a keyword (NOT a block parameter at all, so it is not even second class) 2. check syntactically, whether...
Yes you are right, the moment where `resume` is used under an abstraction (inside of a def, or block parameter), we do not actually know the call-site and could leak...
Counter proposal: Not mentioning effects means: "please infer effects".
Hey, this is a great idea! It is related to an old ticket: #397 We also had a long discussion about bidirectional effects here, in case you are interested: #395...
@phischu is right to question why there should be a semicolon on the toplevel at all. Does anybody see a single valid use case?
We should also change the source and core representation. However, it would be good to do this after merging #1219
One bit of additional information: the inferred type of the returned ref is `Ref[String] at {r1}`, which is correct. So my conjecture is that simply the wellformedness check is buggy:...
Potentially fixed by #552