Development resources at your finger tips
Build with the coolest Web3 projects
Recurring funding for Open Source
Learn about Web3 & earn rewards
Show appreciation for each other
Meet fellow developers, designers, futurists and more. Collaborate and BUIDL awesome projects together.
Discover great web3 organizations, work on meaningful projects and build relationships with like minded people. Browse Tribes
Meet the top hunters and contributors from our community.
A little over three months ago, we announced the beginning of KERNEL. An experiment in building a highly curated community of talented builders in We…
GoodDollar is live and over 20,000 users have created wallets from every corner of the globe. Are you interested to learn how we plan to use smart co…
Gitcoin is GDPR compliant. Learn more in
Gitcoin's Terms & Conditions.
Check out the Issue Explorer
Looking to fund some work? You can submit a new Funded Issue here.
before the enforcer can run an op-code on chain, every VM element needs to be initialized.
Currently the VM stack needs to be initialized as follows:
1. All stack elements are provided in initialization transaction.
2. Stack elements are hashed and combined with hashes of other VM elements.
3. If VM root hash matches with generated hash, VM has been set up correctly.
This is not efficient, as the next opcode will likely only read or write the topmost stack elements. Use unbalanced merkle-tree example here to implement compact proofs https://github.com/parsec-labs/solEVM-enforcer/pull/9 .