Skip to content
Compiles an AST (Abstract Syntax Tree) to Ethereum Virtual Machine bytecodes, WIP.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
lib
test
.gitignore
.npmignore
LICENSE
README.md
package-lock.json
package.json

README.md

EVM Compiler

Compiles an AST (Abstract Syntax Tree) to Ethereum Virtual Machine bytecodes, WIP.

Design

TBD

Versions

  • 0.0.1 First published version
  • 0.0.2 Fix check datasize; fix binary order evaluation; using geast@0.0.7
  • 0.0.3 Process local variables, loop and conditional commands
  • 0.0.4 Process break and continue commands
  • 0.0.5 For command, fnhash in API, stop in void method, local variables management first implementation

To Do

  • Management of local variables (partial)
  • Call private, internal, external methods
  • Pass arguments in stack when needed
  • Returns result in stack when needed
  • Contract inheritance
  • String support
  • Mapping support
  • Dynamic arrays support
  • Static array support
  • Call another contract
  • Transfer value to another address
  • Pure, view methods
  • Generate ABI

References

TBD

Contribution

Feel free to file issues and submit pull requests — contributions are welcome.

If you submit a pull request, please be sure to add or update corresponding test cases, and ensure that npm test continues to pass.

You can’t perform that action at this time.