-
Notifications
You must be signed in to change notification settings - Fork 212
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
Need safer expansion #11
Labels
Comments
dckc
pushed a commit
to dckc/agoric-sdk
that referenced
this issue
Dec 5, 2019
dckc
pushed a commit
to dckc/agoric-sdk
that referenced
this issue
Dec 5, 2019
dckc
pushed a commit
to dckc/agoric-sdk
that referenced
this issue
Dec 5, 2019
dckc
pushed a commit
to dckc/agoric-sdk
that referenced
this issue
Dec 5, 2019
Hi @michaelfig I think you already fixed this and can close it out. So can I assign it to you? |
Yes, this is done. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Even under SES, the currently proposed expansion of
bob~.foo(carol)
tois not actually safe against reentrancy. It would be if, under SES, all genuine promises were born frozen. However, SES has not specified this, and it is hard (possibly impossible) for a SES shim to enforce without an invasive rewrite. Given that genuine SES promises are not born frozen, someone could add a
.post
method override as an own property to a genuinebob
promise before the above operation.Instead,
Possible expansions:
If we do that, the analogy between these are corresponding
Reflect
methods becomes strong, so we should also adopt theReflect
terminology:Given that
E
itself is frozen under SES, under SES this would already be a safe expansion. Only outside of SES is the divergence between the safety of the speced "original/internal" vs the expansion observable, which is fine.Should
E
be global? Probably not. It should be exported from ajs:
standardized builtin module.The text was updated successfully, but these errors were encountered: