Return to Compilation, Compiler, Compile-time constant, Runtime
In computing, compile time is the period of time when a compiler processes source code into other code that is more readily executable – typically object code or byte code. Compile time is a phase in the operational life cycle of a program as it transitions from development to execution. The length of time it takes to compile is usually referred to as compilation time although compile time might also be used.
Compile time can be subdivided by the phases of a compiler. Most compilers have at least the following phases: syntax analysis, semantic analysis, and code generation. Many compilers include one or more optimization phases. For example, each constant expressions might be evaluated via compile-time execution to produce a value that results in improved runtime performance.
Properties of a program that can be determined at compile time include range-checks (e.g., proving that an array index will not exceed the array bounds), deadlock freedom in concurrent languages, or timings (e.g., proving that a sequence of code takes no more than an allocated amount of time). For statically-typed languages such as Java or Rust, types are checked at compile time to ensure type safety.
Compiling is typically part of a build process (at build time). A build may also include linking (at link time). Run time is the duration when the program is running.
Often, compilation occurs as a separate step before running a program. But with dynamic compilation, transformation to machine language happens as part of the process of running it – intertwining run time and compile time. Often this is split into two distinct processes: a build-time process that converts source code to an intermediate representation (IR) and a run-time process that converts the IR to machine code.
gcc related ONLY: Give me a 125 term vocabulary list sorted by popularity in usage (by commonly used / frequency of use in codebases). That means 125 terms, not 125 words. DO NOT REPEAT YOURSELF. Acronyms related to gcc technology are allowed but they must be expanded. e.g. RAII (Resource Acquisition Is Initialization). The terms should have to do ONLY with and SPECIFICALLY with gcc, CANNOT include generic operating system terms, generic IT terms, or computing terms. No definitions. Just the words. Each word should be surrounded by double brackets and separated by a comma and on the same lines. e.g. robots, robotics. Etc.
gcc (GNU Compiler Collection), clang (C Language Frontend), g++ (GNU C++ Compiler), javac (Java Compiler), kotlinc (Kotlin Compiler), scalac (Scala Compiler), rustc (Rust Compiler), go (Go Compiler), tsc (TypeScript Compiler), dart (Dart Compiler), swiftc (Swift Compiler), csc (C Sharp Compiler), fsc (F Sharp Compiler), nim (Nim Compiler), dmd (D Language Compiler), ldc (LLVM D Compiler), gdc (GNU D Compiler), haskell ghc (Glasgow Haskell Compiler), elm (Elm Compiler), ocamlc (OCaml Compiler), cabal (Haskell Build System), dotnet CLI (C Sharp Compiler), mcs (Mono Compiler Suite), erlang (Erlang Compiler), python -m py_compile (Python Bytecode Compiler), node (Node.js Compiler), babel (Babel JavaScript Compiler), emcc (Emscripten Compiler), javac -module-path (Java Module Compiler), wat2wasm (WebAssembly Text Format Compiler).
navbar_gcc (GNU Compiler Collection)]], navbar_clang (C Language Frontend)]], navbar_gpp (GNU C++ Compiler)]], navbar_javac (Java Compiler)]], navbar_kotlinc (Kotlin Compiler)]], navbar_scalac (Scala Compiler)]], navbar_rustc (Rust Compiler)]], go (Go Compiler), navbar_tsc (TypeScript Compiler)]], navbar_dart_cli (Dart Compiler)]], navbar_swiftc (Swift Compiler)]], navbar_csc (C Sharp Compiler)]], navbar_fsc (F Sharp Compiler)]], navbar_nim (Nim Compiler)]], dmd (D Language Compiler), ldc (LLVM D Compiler), gdc (GNU D Compiler), haskell navbar_ghc (Glasgow Haskell Compiler)]], navbar_elm_cli (Elm Compiler)]], ocamlc (OCaml Compiler), navbar_cabal] (Haskell Build System), navbar_dotnet_CLI]{ (C Sharp Compiler), mcs (Mono Compiler Suite), navbar_erlang (Erlang Compiler)]], python -m py_compile (Python Bytecode Compiler), navbar_node (Node.js Compiler)]], navbar_babel (Babel JavaScript Compiler)]], navbar_emcc (Emscripten Compiler)]], javac -module-path (Java Module Compiler), navbar_wat2wasm (WebAssembly Text Format Compiler)]].
Compilers: GCC - GNU Compiler Collection, LLVM, clang, On Windows use mingw and cygwin, Compiled language, Compiler Explorer, Compiler list, Compiler, Compilation, Compiled, Compiling, Decompiler, Decompilation, Decompiled, Decompiling, Recompiler, Recompilation, Recompiled, Recompiling
(navbar_compilers - see also navbar_llvm, navbar_gcc)
Cloud Monk is Retired ( for now). Buddha with you. © 2025 and Beginningless Time - Present Moment - Three Times: The Buddhas or Fair Use. Disclaimers
SYI LU SENG E MU CHYWE YE. NAN. WEI LA YE. WEI LA YE. SA WA HE.