meplang 0.1.8

An EVM low-level language that gives full control over the control flow of the smart contract.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
contract HelloWorld {
    #[assume(returndatasize = 0x00)]
    block main {
        // copy the bytes into memory
        push(hello_world.size) push(hello_world.pc) push(0x) codecopy

        // return them
        push(hello_world.size) push(0x) return
    }

    block hello_world {
        // "Hello World!" as bytes
        0x48656c6c6f20576f726c6421
    }
}