Thomas Lively

Results 857 comments of Thomas Lively

~How is this different from e.g. a struct definition referring to another heap type via a reference-typed field?~ Ah, because of the validation rule that only function type indices are...

@fgmccabe, the idea is that only the edge from the cont type to its func type would have to go backwards, so you could still write this mutual recursion: ```...

(But this should be moot due to the existing need for two passes that @rossberg mentioned.)

The GC prefix or a new prefix would make sense to me. Choosing an experimental prefix (0xff?) with a documented intention to change it before phase 4 also makes sense...

FWIW we now have standard precedent for prefixed control flow instructions: `br_on_cast` and `br_on_cast_fail`.

Thinking ahead to shared suspendable functions, an advantage of a block-scope barrier is that it would allow a shared suspendable function to temporarily hold non-shared references inside the scope of...

Yes, for a plain barrier that has nothing to do with multithreading, that's definitely the primary use case. We're thinking ahead to the multithreaded stack switching use case because in...

> I suppose a downside of the `resume_barrier` variation is that it requires placing the code on continuation (i.e. another stack), whereas the block variation allows code to run on...

If you fused cont.new and resume_barrier, you might as well just call the result call_barrier. And then if you wanted to take a page out of the EH playbook to...

I suspect that the most sensible decision is to leave `barrier` of any kind out of this proposal. That has the happy side effect of reducing design coupling between this...