Internals

How the build, the request path and the C boundary actually work.

Updated 1 min read

Cataract is two layers. cataract-cli scans a project and generates Chapel source; cataract-runtime is the server that source is linked against. They share only the generated code.

In this section

Reading this section is not required to use the framework. It is here because a server you cannot reason about is a server you cannot trust, and because the constraint that shaped the I/O design — a Chapel task blocked in a foreign call does not release its scheduler worker — explains almost every decision below it.