Compile time

In computer science, compile time refers to either the operations performed by a compiler (the "compile-time operations"), programming language requirements that must be met by source code for it to be successfully compiled (the "compile-time requirements"), or properties of the program that can be reasoned about during compilation. Compile time refers to the time duration in which the programming code is converted to the machine code (i.e binary code) and usually occurs before runtime.

Overview

The operations performed at compile time usually include syntax analysis, various kinds of semantic analysis (e.g., type checks and instantiation of template) and code generation.

Programming language definitions usually specify compile time requirements that source code must meet to be successfully compiled. For example, languages may stipulate that the amount of storage required by types and variables can be deduced.

Properties of a program that can be reasoned about 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).

Compile time occurs before link time (when the output of one or more compiled files are joined together) and runtime (when a program is executed). In some programming languages it may be necessary for some compilation and linking to occur at runtime. There is a trade-off between compile-time and link-time in that many compile time operations can be deferred to link-time without incurring extra run-time.

"Compile time" can also refer to the amount of time required for compilation.

gollark: I guess that you could maybe, I don't know, have differences in *measured* temperature depending on where the thermal sensors are, or have different fan control. But that couldn't really change total heat output.
gollark: The *only way* it can heat up is by converting electricity to heat when operating.
gollark: That makes absolutely no sense.
gollark: You are obviously not seeing the people without issues by looking there though.
gollark: Dendrite is somewhat faster but still very resource hungry versus an IRC server or bouncer, and it lacks features.

See also

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.