Skip to content

aesophia

This is the sophia compiler for the æternity system which compiles contracts written in sophia code to the æternity VM code.

For more information about æternity smart contracts and the sophia language see Smart Contracts and the Sophia Language.

It is an OTP application written in Erlang and is by default included in the æternity node. However, it can also be included in other systems to compile contracts coded in sophia which can then be loaded into the æternity system.

Versioning

aesophia has a version that is only loosely connected to the version of the Aeternity node - in principle they will share the major version but not minor/patch version. The aesophia compiler version MUST be bumped whenever there is a change in how byte code is generated, but it MAY also be bumped upon API changes etc.

Interface Modules

The basic modules for interfacing the compiler: