What are the specific rules for smart-contract languages (such as solidity) which run in a blockchain (and are considered languages because they can compute primes and that)?

Those languages are full of implicit input (creator address, caller address, past events in the blockchain, the called function's parameters itself, the amount of coins moved, the exact timestamp of transaction). Are all of those inputs methods allowed?

Is a populated public object a allowed output format?

Do compiled (EVM) code or the opcodes (assembly-like) count as different languages than the high-level one?

  • \$\begingroup\$ The compiled language and opcodes are separate languages. You can find examples of answers written in assembly or JVM on this site. \$\endgroup\$
    – mbomb007
    Aug 24, 2017 at 20:43


You must log in to answer this question.

Browse other questions tagged .