nes-pascal

Compiler pipeline

The compiler pipeline is deliberately separated:

.nsp source
  -> lexer
  -> parser
  -> AST
  -> semantic validation, name resolution, and type checking
  -> resolved AST
  -> ca65 backend
  -> ca65
  -> ld65
  -> ROM

Components

Source text is not translated directly to Assembly with string replacement. The compiler uses explicit parsed and resolved AST nodes between parsing and code generation.

Ordinary source errors are displayed without a Python stack trace and include an error code, file, line, column, source excerpt, and correction hint when useful. See the diagnostics reference.