Supported Languages
Support for different programming languages is realized via Sidex backends. A backend for a language usually comprises (1) a code generator and (2) a runtime library providing functionality used by the generated code.
You can write your own code generator in Rust with the sidex-gen
crate. See Third-Party Backends for more details.
Officially Supported Backends
Officially, we provide backends for the following programming languages:
In the future, we may add officially supported backends for Python and C++.
For now, we do not plan to accept pull requests adding officially supported backends.
Third-Party Backends
Sidex is a young project and there are no third-party backends yet.
If you wrote a backend for a language (may also be an officially supported one) please let us know so we can add it here.
If you develop a backend in Rust, please refrain from giving the crate a name of the form sidex-gen-*
. While not enforceable on crates.io, we would like to reserve this namespace for officially supported backends. Instead, feel free to use a name of the form sidex-contrib-*
clearly indicating that the backend is a third-party contribution.
If you think about developing a backend, it's probably best to have a look at the Advanced Topics.