Where Prismio is
discussed and built.

Prismio is developed on GitHub, with a Discord server for questions and conversation. Both are open to everyone: report a bug, ask a question, or send a patch.

Where to talk.

Discord

Questions, troubleshooting, and conversation with the maintainer and other users. Start here if you are stuck or just curious.

Join the Discord

GitHub Issues

Bug reports, feature requests, and tracked work. A minimal program that reproduces the problem is the most useful thing you can include.

Open the issue tracker

Where help fits.

Compilersrc/
The lexer, parser, semantic analysis and ownership checks, the Adaptive Inference Framework, and LLVM lowering. The compiler is written in Prismio.
Browse src/
Standard librarystd/
Collections, strings, files, input, time, and math, written in Prismio (.psm).
Browse std/
Benchmarksbenchmarks/
Workloads for the Prismio, C++ and Rust suite. All three versions of a workload must be the same program and agree on the checksum.
Browse benchmarks/
Editor supportintellij-plugin · prismio-tmlanguage
The JetBrains plugin and the TextMate grammar used for syntax highlighting.
Open the plugin

How a change lands.

  1. Step 1

    Make a small, focused change

    Work in src/ or std/. For anything large, open an issue first so the approach can be agreed before you write the code.

  2. Step 2

    Add tests and run them

    Behaviour you add or fix needs a test in tests/. A pull request that adds language behaviour without one is unlikely to be merged.

  3. Step 3

    Open a pull request against main

    Run prismio gate first: it lints, packages the compiler and runs the whole release gate. CI does not run on push; a maintainer starts it by hand on the pull request, and it bootstraps from the release seed, checks that the compiler reproduces itself (gen0 → gen1 → gen2), then runs the suite.

Prismio follows the Contributor Covenant. Read the Code of Conduct.

Rather just try it first?

Install Prismio, write something small, and report where it broke.