A programming language for distributed systems integrated with the rust ecosystem.
There is ongoing work to build the first prototype of the Kami compiler. The various intermediate languages and compilation steps can be found in the kami-core/src/KamiCore/Language/
subfolders. A short explanation of the purpose of each step, together with a small example which is run through the pipeline is available in kami-core/src/KamiCore/Pipeline/Definition.agda
.
In order to typecheck the current prototype, you need a recent install of Agda (e.g. version 2.6.x, or the current master branch).
Additionally, you will need to install the following libraries on your system, as described in the Agda documentation:
In order to typecheck the whole compilation pipeline, and apply it to the example term, change into the kami-core/src/KamiCore/Pipeline/
subfolder and run agda Definition.agda
. This will take quite some time as it recursively typechecks all dependencies.
This project is funded through NGI Zero Core, a fund established by NLnet with financial support from the European Commission's Next Generation Internet program. Learn more at the NLnet project page.