Introduction
Section titled “Introduction”Brass is a scripting language: a source file runs directly, with no build step.
The default runtime compiles native code on demand, while the static type checker
validates every function before that function can execute.
Use brass check when you need a complete whole-program verdict without running the program.
The .cz extension of Brass source files comes from copper and zinc,
the two metals that make up brass.
Brass’s type system rests on flexible type inference, which reduces type annotations to nearly zero. Annotations remain available where a variable’s type should be constrained explicitly.
In short:
- Just-in-time compilation
- Static type checking with a demand-driven default run
- Type inference that keeps annotations optional in most code
- Structural subtyping with interface definitions
This book has two parts. The user guide introduces the language feature by feature, with runnable examples. The references describe the language exhaustively: syntax, the type system, the standard library, and the execution model.