Skip to content

Getting started

Calcify installs through Reef, the Chelis package manager.

Terminal window
chelis reef install --from-github Chelis-Lang/calcify@v0.10.2

This pulls the Calcify binary and registers the calcify command in your Chelis toolchain.

Given a typed Python module, translate it to Chelis:

Terminal window
calcify translate module.py --typing-pass mypy --output module.ch

The --typing-pass flag tells Calcify which type checker produced the annotations. Supported values: mypy, pyright, pytype.

The output is a .ch file containing Chelis source in Surf syntax. It is ready for the standard Chelis toolchain:

Terminal window
chelis check module.ch # type-check the translated module
chelis build module.ch # compile to an executable or library

Calcify also writes a manifest (.calcify-manifest.json) alongside the output. The manifest records the tier assigned to each translated unit, any bridge calls introduced, and the deterministic hash of the input.