Burnout compiler tools inside the editor: compile and run the Cryo language on any backend (Go, Pyro, Node.js, C, x86-64), audit, disassemble bytecode, and inspect tokens/AST — without leaving VS Code.
📚 Official Documentation & Examples
Visit the complete interactive documentation, language specification, and code examples at:
👉 https://victor-477.github.io/Cryo-Pyro-Documentation
Commands
Available in the Command Palette (Ctrl+Shift+P), the context menu of .cryo files, and the Explorer:
| Command | What it does |
|---|---|
| Burnout: Compile and run | Compiles on the default backend and executes (Ctrl+Alt+R) |
| Burnout: Compile (choose backend) | QuickPick menu with options: Go / Pyro / Node.js / C / x86-64 |
| Burnout: Compile to Pyro (bytecode) and run | --backend pyro --run |
| Burnout: Compile to Go and run | --backend go --run |
| Burnout: Compile to Node.js and run | --backend node --run |
| Burnout: Compile to C | --backend c |
| Burnout: Compile to x86-64 (asm) | --backend asm |
| Burnout: Security Audit | --audit (security scan report displayed in Burnout panel) |
| Burnout: Disassemble bytecode (--dis) | Readable listing disassembly of the generated .pyro file |
| Burnout: Show AST / tokens | Inspection of frontend AST and token stream |
Diagnostics & Language Server
- Inline Error Squiggles: Lexical, syntax, type, and code generation errors appear as red squiggly lines at the correct line/column.
- Language Server Protocol (LSP): Integrated stdlib LSP server (
burnout/lsp.py) providing hover information, diagnostics on type, and symbol outline.
Tasks (tasks.json)
There is a burnout task provider. Example:
{
"version" : "1.0.0",
"tasks": [
{
"type": "burnout",
"file": "cryo/examples/example_bytecode.cryo",
"backend": "pyro",
"run": true,
"problemMatcher": "$burnout",
"label": "Cryo: run example"
}
]
}
Settings
| Setting | Default | Description |
|---|---|---|
burnout.pythonPath |
python |
Python executable used to invoke the compiler. |
burnout.compilerEntry |
(empty) | Path to burnout/cryoc.py. Empty = searches the workspace; otherwise uses python -m burnout. |
burnout.defaultBackend |
go |
Default backend for "Compile and run" (go, pyro, node, c, asm). |
burnout.safeMode |
true |
Safe mode; uncheck to compile with --unsafe. |
burnout.lsp.enabled |
true |
Enables the Cryo Language Server (hover, diagnostics, outline). |
How the compiler is located: if
burnout.compilerEntryis empty, the extension searches forburnout/cryoc.py(orBurnout/cryoc.py) in the workspace folders; if not found, it falls back topython -m burnout— which works when the package is installed (pip install -e .in theburnoutfolder).
Combine with the Cryo Lang extension (syntax highlighting/snippets for .cryo) and Pyro Bytecode (disassembly for .pyro).