-
Notifications
You must be signed in to change notification settings - Fork 79
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Built-in actors abort versus errors #53
Comments
In the Forest actors there was no hard system boundary between actors and the runtime, that’s why they return/propagate up the stack. In the post-FVM world, the trampoline shims the no-boundary world with the boundary world by recognising the error after its been propagated, and signalling the interruption across the boundary. IMO, the key behaviour we want to bring home is that the actor emitting an error should interrupt execution immediately. Go achieves this through the usage of panics. WASM can achieve this by invoking a host function that traps. I'm all onboard with the latter model. |
Sounds good to me.
Yes and no. It would have been possible to create that boundary with https://doc.rust-lang.org/std/panic/fn.catch_unwind.html. |
this can be a post network v16 thing - whoever has time, it would be nice to. pick this up |
This would make matching the Go actors behaviour much easier to verify for nv16. |
I agree with the "should" here, but are we really going to do it? I don't think we'll ever get to it, and the thing we have now works (module #52). |
Not in the near term, but I expect this is something new contributors could chip away at. |
I propose closing this issue as something we're not going to action. Any objections? |
Not really. I still think this is something we should explore (maybe in a new sdk) but it's not really actionable as-is. |
We should abort in rust actors as well:
The text was updated successfully, but these errors were encountered: