tape check

Usage

bash
tape check <file.tape>

Purpose

Runs the frontend pipeline through type checking without generating code. Useful for fast feedback in editors and CI.

bash
tape check app.tape
# OK

tape check broken.tape
# broken.tape:12:5: error: type mismatch: expected i64, got string

What it does

  1. Split source into regions
  2. Parse #code region (no rt0 preamble — single-module only)
  3. Parse #view region, merge components
  4. Execute @tape blocks (compile-time metaprogramming)
  5. Type check

Prints OK on success. Errors go to stderr.

Options

FlagDescription
--humanHuman-readable errors with color and source context
--max-errors <N>Stop after N errors
-I <path>Add module search path

Exit codes

CodeMeaning
0No errors
1Parse errors, comptime errors, or type errors found

Speed

tape check skips:

  • TAC lowering
  • Link checking
  • Native codegen
  • Binary emission

It’s the recommended command for editor integrations and pre-commit hooks.

Last modified: