biology daily - the biology and biochemistry encyclopedia
biology daily articles and research Encyclopedia Dictionary Forums biology research links Weblinks Pictures Articles Blogs Newsletter

Compile time

In computer science, compile time, as opposed to runtime, is the time when a compiler compiles code written in a programming language into an executable form.

A compiler will typically perform syntax checking, which includes type checks, scoping rule enforcement, amongst other checks; and other processes such as static binding, instantiation of templates, and optimization. Those are also called semantic analyses. Dynamic binding is typically done after compile time, either at runtime or before runtime usually by means of a program loader. Boundary checking of arrays is usually not done at compile time.

Cross-compilers can produce programs which will run on a different CPU type, something which is often prohibitively slow at run time, though sophisticated implementations which perform efficient once-only conversion either at first execution and saved semi-permanently or once per execution do exist. Such implementations are not as efficient as cross-compilation but they may be the only practical solution where a vendor does't produce a program on the desired CPU.

When an interpreter is used there is in general no separation between compile time and run time. There may instead be a interpretation phase (often into bytecode) followed by execution, but performed by the same software and not exposed to the user. Compile time errors in a program that is normally compiled may instead be detected as runtime errors when interpreted and this makes it hard to check every single execution path without extensive debugging.



07-14-2008 23:18:10
The contents of this article are licensed from Wikipedia.org under the GNU Free Documentation License. How to see transparent copy
BiologyDaily.com 2005. Legal info   Privacy