Site banner
.
Home Forums Blogs Articles Photos Videos Contact FAQ                    
.
.
Wisdom Archive
Body Mind and Soul
Faith and Belief
God and Religion
Law of Attraction
Life and Beyond
Love and Happiness
Peace of Mind
Peace on Earth
Personal Faith
Spiritual Festivals
Spiritual Growth
Spiritual Guidance
Spiritual Inspiration
Spirituality and Science
Spiritual Retreats
More Wisdom
Buddhism Archives
Hinduism Archives
Sustainability
Theology Archives
Even more Wisdom
2012 - Year 2012
Affirmations
Aura
Ayurveda
Chakras
Consciousness
Cultural Creatives
Diksha (Deeksha)
Dream Dictionary
Dream Interpretation
Dream interpreter
Dreams
Enlightenment
Essential Oils
Feng Shui
Flower Essences
Gaia Hypothesis
Indigo Children
Kalki Bhagavan
Karma
Kundalini
Kundalini Yoga
Life after death
Mayan Calendar
Meaning of Dreams
Meditation
Morphogenetic Fields
Psychic Ability
Reincarnation
Spiritual Art, Music & Dance
Spiritual Awakening
Spiritual Enlightenment
Spiritual Healing
Spirituality and Health
Spiritual Jokes
Spiritual Parenting
Vastu Shastra
Womens Spirituality
Yoga Positions
Site map 2
Site map


Dream Sharing Forum

at Global Oneness Community.

Share your dreams and let others help you with the interpretation!
Dream Sharing Forum



.

Compiler - Types of compilers

Compiler - Types of compilers: Encyclopedia II - Compiler - Types of compilers

Compiler - Native versus cross compiler. Most compilers are classified as either native compilers or cross compilers. A compiler may produce binary output intended to run on the same type of computer and operating system ("platform") as the compiler itself runs on. This is sometimes called a native-code compiler. Alternatively, it might produce binary output designed to run on a different platform. This is known as a cross compiler. Cross compilers are very useful when bringing up a new hardware platform f ...

See also:

Compiler, Compiler - History, Compiler - Types of compilers, Compiler - Native versus cross compiler, Compiler - One-pass versus multi-pass compilers, Compiler - Compiled versus interpreted languages, Compiler - Compiler design, Compiler - Compiler front end, Compiler - Compiler back end, Compiler - Notes

Compiler, Compiler - Compiled versus interpreted languages, Compiler - Compiler back end, Compiler - Compiler design, Compiler - Compiler front end, Compiler - History, Compiler - Native versus cross compiler, Compiler - Notes, Compiler - One-pass versus multi-pass compilers, Compiler - Types of compilers, Loop nest optimization, Compiler analysis, Assemblers, Compiler construction, Interpreter software, Abstract interpretation, Linkers, Top-down parsing, Bottom-up parsing, Attribute grammar, Semantics encoding, Error avalanche, Recompilation, Decompiler, Just-in-time compiler, Meta-Compilation, Preprocessor, Parallel compilers, Important publications in compilers for programming languages, Hardware compilation

Compiler: Encyclopedia II - Compiler - Types of compilers



Compiler - Types of compilers

Compiler - Native versus cross compiler

Most compilers are classified as either native compilers or cross compilers.

A compiler may produce binary output intended to run on the same type of computer and operating system ("platform") as the compiler itself runs on. This is sometimes called a native-code compiler. Alternatively, it might produce binary output designed to run on a different platform. This is known as a cross compiler. Cross compilers are very useful when bringing up a new hardware platform for the first time (see bootstrapping). Cross compilers are also necessary when developing software for microcontroller systems that have barely enough storage for the final machine code, much less a compiler. Compilers which are capable of producing both native and foreign binary output may be called either a cross compiler or a native compiler depending on a specific use, although it would be more correct to classify them as a cross compilers.

Interpreters are never classified as native or cross compilers, because they do not output a binary representation of their input code.

Virtual machine (VM) compilers are typically not classified as either native or cross compilers. However, if need be, they can be classified as one or the other, especially in the less usual cases where a compiler is running inside the same VM (making it a native compiler), or where a compiler is capable of producing an output for several different platforms, including a VM (making it a cross compiler).

Compiler - One-pass versus multi-pass compilers

All compilers are either one-pass or multi-pass.

  • One-pass compilers, like early compilers for the Pascal programming language.
    • The compilation is done in one pass over the program source, hence the compilation is completed very quickly.
  • Multi-pass compilers, like 2-pass compilers or 3-pass compilers
    • The compilation is done step by step. Each step uses the result of the previous step and creates another intermediate result. This can improve final performance at the cost of compilation speed.

While the typical multi-pass compiler outputs machine code from its final pass, there are several other types:

  • A "source-to-source compiler" is a type of compiler that takes a high level language as its input and outputs a high level language. For example, an automatic parallelizing compiler will frequently take in a high level language program as an input and then transform the code and annotate it with parallel code annotations (e.g. OpenMP) or language constructs (e.g. Fortran's DOALL statements).
  • Stage compiler that compiles to assembly language of a theoretical machine, like some Prolog implementations
    • This Prolog machine is also known as the Warren Abstract Machine (or WAM). Byte-code compilers for Java, Python (and many more) are also a subtype of this.
  • Just-in-time compiler, used by Smalltalk and Java systems, and also by Microsoft .Net's Common Intermediate Language (CIL)
    • Applications are delivered in bytecode, which is compiled to native machine code just prior to execution.

Other related archives

1950s, 1957, 1960, 1960s, 1962, 1970s, A-0, Abstract interpretation, Assemblers, Attribute grammar, Bottom-up parsing, COBOL, COM file, Code generation, Common Intermediate Language, Compiler optimization, Decompiler, EBNF, EXE, Error avalanche, FORTRAN, GCC, Grace Hopper, Graph, Hardware compilation, IBM, Important publications in compilers, Intel, Intermediate language, Intermediate representation, Interpreter software, John Backus, Just-in-time compiler, Lexical analysis, Linkers, Lisp, Loop nest optimization, MIT, Meta-Compilation, Microsoft, Multi-pass compilers, Niklaus Wirth, One-pass compilers, Open64, OpenMP, Optimization, P-Code, PL/0, Parallel compilers, Parsing, Pascal programming language, Preprocessor, Prolog, Python, Recursive descent parser, SGI, SNOBOL4, Semantic analysis, Semantics encoding, Sun Microsystems, Syntax analysis, Top-down parsing, Tree, Virtual machine, Warren Abstract Machine, assembly language, back end, basic block, bootstrapping, build utility, bytecode, call graph, cascaders, compiled languages, compiler optimization, complexity, computer language, computer program, computer science, constant propagation, control flow graph, cross compiler, dead code elimination, decompiler, dependence analysis, educational programming language, entry points, executable, external calls, finite state automaton, formal language, front end, high level language, identifier, inline expansion, interpreted languages, keyword, linked, loop transformation, machine code, machine language, microcontroller, object, object code, platform, programming languages, register allocation, regular expression, regular language, representation, source code, subroutine, symbol name, text file, transcompilers, use-define chain, virtual machine



Adapted from the Wikipedia article "Types of compilers", under the G.N U Free Docmentation License. Please also see http://en.wikipedia.org/wiki

More material related to Compiler can be found here:
Main Page
for
Compiler
Index of Articles
related to
Compiler


« Back








Search the Global Oneness web site
Global Oneness is a huge, really huge, web site. Almost whatever you are searching for within health, spirituality, personal development and inspirationals - you will find it here!
Google
 
 

Rate this article!

Please rate this article with 10 as very good and 1 as very poor.

.








Sneak-Peek of Global Oneness Community

Hi friend! The Global Oneness Community, the place for information and sharing about Oneness is not really launched yet (you will see there is still some clean up to do) ...but it is now open for a sneak-peek! And if you wish - please register and become one of the very first members to do so! Jonas

Forum Home, Articles, Photo Gallery, Videos, News, Sitemap
...and much more!


Dream Sharing Forum

at Global Oneness Community.

Share your dreams and let others help you with the interpretation!
Dream Sharing Forum



Forum
Articles
Images Pictures
Videos
News
Sitemap




 

 

 

 

 


 








  » Home » » Home »