Compilers Glossary
Browse 35 compilers terms defined in plain English, from the cultural dictionary of computing.
35 Compilers Terms
- Clang
- A compiler front end for languages like C, C++, and Objective-C, built as part of the LLVM project. In systems programming culture, Clang is known for good...
- Compile Error
- A Compile Error is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- Compiler Directive
- A Compiler Directive is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- Compiler Flag
- A Compiler Flag is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- Compiler Optimization
- A Compiler Optimization is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make...
- Compiler Pass
- A Compiler Pass is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- Compiler Warning
- A Compiler Warning is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- Compile Time
- A Compile Time is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code easier...
- Custom Parser
- A parser built for a specific input format, language, or domain instead of using a generic off-the-shelf parser unchanged. Custom parsers are common when data...
- Formal Grammar
- Formal Grammar is a set of production rules that precisely defines the syntax of a language by specifying how strings of symbols can be generated from a start...
- GNU Toolchain
- The collection of GNU development tools, often including the compiler, linker, debugger, and related utilities used to build and inspect software. In systems...
- JIT Compiler
- A just-in-time compiler that translates code into native machine instructions during program execution instead of ahead of time. JITs watch running code,...
- Lookahead
- A parsing technique that examines upcoming tokens or characters in the input stream without consuming them, used to make decisions about which grammar rule to...
- Loop Unrolling
- A compiler or manual optimization that replicates the body of a loop multiple times per iteration, reducing the overhead of branch instructions, loop counter...
- MinGW
- A development environment and port of GNU tools for building native Windows applications, commonly expanded as Minimalist GNU for Windows. In cross-platform...
- Nim
- An open-source programming language designed for performance, expressiveness, and compiled native binaries with a relatively lightweight feel. In language...
- Object File
- The intermediate binary output produced by a compiler (typically with a `.o` or `.obj` extension) that contains machine code, symbol tables, and relocation...
- Optimization
- The process of modifying code, queries, algorithms, or system configuration to improve a measurable performance metric — such as execution time, memory usage,...
- Parse
- To analyze a string of symbols — source code, JSON, HTML, or any structured text — according to a formal grammar, converting it into a structured...
- Parser Combinator
- A higher-order function that takes simple parsers (matching a character, a string, a regex) and combines them into more complex parsers using operations like...
- Parser Generator
- A tool that takes a formal grammar specification (typically in BNF or PEG notation) and automatically produces source code for a parser that can recognize and...
- Parse Tree
- A tree data structure that represents the syntactic structure of source code (or any input) according to a formal grammar, where internal nodes correspond to...
- Pretty Printer
- A tool or function that reformats data, code, or structures into a cleaner and more readable layout. Pretty printers show up in compilers, debuggers,...
- Programming Language
- A formal system of syntax, semantics, and type rules used to express computations that can be executed by a machine, either directly through compilation to...
- Rust Toolchain
- The set of Rust development tools used together, typically including the compiler, Cargo, standard library, and associated components. In engineering practice,...
- Scope Resolution
- The mechanism by which a compiler or interpreter determines which declaration a name refers to when the same identifier exists in multiple enclosing scopes or...
- Self-Hosting
- Running software on your own infrastructure rather than using a managed cloud service, or — in compiler theory — the milestone where a compiler is capable of...
- Stack Machine
- A computation model (or virtual machine) where instructions operate on values at the top of an implicit stack rather than named registers. Operands are pushed,...
- Term Rewriting
- A computation model in which expressions (terms) are transformed by repeatedly applying pattern-matching rules that replace subterms matching a left-hand side...
- Toolchain
- The ordered set of development tools that work together to transform source code into a deployable artifact — typically including a compiler or transpiler,...
- Type Checking
- The process — performed statically at compile time or dynamically at runtime — of verifying that operations in a program are applied to values of compatible...
- TypeScript Compiler
- The official TypeScript compiler (`tsc`), written in TypeScript itself, that parses `.ts`/`.tsx` files, performs static type checking against the project's...
- Undefined Behavior
- A condition in C, C++, and some other languages where the language standard imposes no requirements on the program's behavior — the compiler is free to assume...
- Unrolling
- A compiler or manual optimization technique that replaces a loop with repeated copies of its body, reducing the overhead of branch instructions and...
- Zig Language
- A systems programming language focused on explicitness, performance, and low-level control with modern tooling.
Related Topics
- Tooling (11 terms in common)
- Parsing (6 terms in common)
- Systems (6 terms in common)
- Performance (3 terms in common)
- Optimization (3 terms in common)
- Build (2 terms in common)
- Open Source (2 terms in common)
- Devops (2 terms in common)
- Functional Programming (2 terms in common)
- Languages (2 terms in common)
- C/C++ (1 terms in common)
- Typescript (1 terms in common)
- Binary (1 terms in common)
- C++ (1 terms in common)
- Architecture (1 terms in common)
- Syntax (1 terms in common)
- Llvm (1 terms in common)
- Gnu (1 terms in common)
- Text (1 terms in common)
- Toolchains (1 terms in common)