sophia/README.md
2024-11-21 16:38:00 +09:00

37 lines
1.4 KiB
Markdown

# Sophia
This is the __Sophia__ compiler for the Gajumaru system which compiles contracts written in __Sophia__ to [FATE](https://gitlab.com/ioecs/protocol/-/blob/master/contracts/fate.md) instructions.
The compiler is being used a few places
- [The command line compiler](https://gitlab.com/ioecs/sophia_cli)
- In [Gajumaru node](https://gitlab.com/ioecs/gajumaru) tests
- [Clutch](https://gitlab.com/ioecs/clutch), the desktop wallet
- Various backend systems that implement GRIDS
## Documentation
* [Introduction](docs/index.md)
* [Syntax](docs/sophia_syntax.md)
* [Features](docs/sophia_features.md)
* [Standard library](docs/sophia_stdlib.md)
* [Contract examples](docs/sophia_examples.md)
* [Contributing](CONTRIBUTING.md)
Additionally you can check out the [contracts section](https://gitlab.com/ioecs/protocol/-/tree/master/contracts) of the Gajumaru blockchain specification.
## Versioning
Versioning should follow the [semantic versioning](https://semver.org/spec/v2.0.0) guidelines. Id est, given a version number MAJOR.MINOR.PATCH, increment the:
- MAJOR version when you make backward incompatible changes
- MINOR version when you add functionality in a backwards compatible manner
- PATCH version when you make backwards compatible bug fixes
## Interface Modules
The basic modules for interfacing the compiler:
* [aeso_compiler: the Sophia compiler](docs/aeso_compiler.md)
* [aeso_aci: the ACI interface](docs/aeso_aci.md)