This document serves as a definitive reference manual for the BLISS programming language as implemented for the PDP-10. BLISS is an "implementation language" designed specifically for creating systems software, such as compilers and operating systems.
Key aspects of the manual include:
- Language Philosophy: BLISS was designed to provide the benefits of a higher-level language—clarity, correctness, and modifiability—while remaining efficient enough to serve as an alternative to assembly language for production software.
- Core Characteristics: The language addresses three primary features of systems programming: managing complex data structures, handling control structures (including time and parallelism), and operating without the need for large, pre-existing support routines (allowing code to run on a "bare" machine).
- Language Definition: The manual details the syntax and semantics of the language, covering modules, blocks, literals (including "plits"), names, pointers, "contents of" operators, various expression types (simple, control, conditional, loop, escape, choice, and co-routine), and declarations (memory allocation, mapping, binding, structures, and functions).
- Special Features: The manual describes language extensions for deeper hardware access, including character manipulation functions, direct PDP-10 machine language insertion, and compiler control via switches and commands.
- Run-time Representation: A section is provided on the run-time environment, stack configurations, and register allocation to aid programmers in understanding how BLISS programs are executed.
- Appendices: The document includes a full syntax specification, a guide to I/O codes, a description of internal word formats, and a comprehensive list of error messages.