-
-
Notifications
You must be signed in to change notification settings - Fork 788
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
Sharding related opcodes #632
Comments
I see no problem with directly adding these opcodes right now, but in order to build implementation around them, I think there needs to be a good discussion about what they are, how they work, and what the tradeoffs could be. For example, |
Softcoded seems more reasonable to me. In my understanding, |
See https://ethresear.ch/t/tradeoffs-in-account-abstraction-proposals/263 for discussion of the actual functionality. |
Looks good, might make sense to do it all in one shot |
@jannikluhn We talked about this on our biweekly Vyper call and we're going to make a Vyper sharding branch. |
The difference between @NIC619 is implementing |
Will |
@NIC619 @jannikluhn just want to check |
@NIC619 That sounds like a good idea to me! |
According to the draft phase 1 spec the EVM won't be specified until phase 2. |
Closing as this isn't relevant anymore. Rather open a new issue for anything related. |
In the current sharding implementation we introduce some additional opcodes: SIGHASH (ethereum/py-evm#226), PAYGAS (ethereum/py-evm#234), and CREATE2 (ethereum/py-evm#224). We write user account contracts that use (some of) these opcodes with Vyper LLL. To successfully compile these contracts we currently have to monkey-patch Vyper:
While this works fine, it would be nice to have them usable from Vyper-LLL directly. At the same time, one should probably not be able to use those when compiling for Ethereum 1.0.
In the long run it might make also to make sense to add something like
tx.sig_hash
and maybepaygas(gas_price)
to Vyper itself.I haven't created a VIP because I'm unsure of how best to do this. Two options could be to (temporarily?) create a separate sharding branch or to add a
target_protocol
flag to the compilation functions.See also: ethereum/py-evm#266
The text was updated successfully, but these errors were encountered: