PDA

View Full Version : Self-Hosting compilers


Kristian Joensen
01-01-2005, 05:49 PM
" MCS was able to parse itself on April 2001, MCS compiled itself for the first time on December 28 2001. MCS became self hosting on January 3rd, 2002. The Mono Runtime and the Mono execution engine were able to make our compiler self hosting on March 12, 2002." (Source: http://www.gotmono.com/docs/tools/cscomp-intro.html )

What is the difference between what happend on December 28 2001, January 3rd 2002 and Mach 12,2002 ?

Sir Lemonhead
01-01-2005, 10:02 PM
"MCS was able to parse itself on April 2001, MCS compiled itself for the first time on December 28 2001. MCS became self hosting on January 3rd, 2002. MCS begins to learn at a geometric rate. It becomes
self-aware at 2:14 a.m. Eastern time, August 29th. In a panic, they try to pull the plug.

It decided our fate in a micro-second: Extermination.


hehehehe sorry.

Joonas
01-02-2005, 09:34 AM
Sir_Lemonhead said:
"MCS was able to parse itself on April 2001, MCS compiled itself for the first time on December 28 2001. MCS became self hosting on January 3rd, 2002. MCS begins to learn at a geometric rate. It becomes
self-aware at 2:14 a.m. Eastern time, August 29th. In a panic, they try to pull the plug.

It decided our fate in a micro-second: Extermination.


hehehehe sorry.



Skynet.... http://forums.3drealms.com/ubbthreads/images/graemlins/redface.gif

DudeMiester
01-07-2005, 01:48 AM
Kristian Joensen said:
" MCS was able to parse itself on April 2001, MCS compiled itself for the first time on December 28 2001. MCS became self hosting on January 3rd, 2002. The Mono Runtime and the Mono execution engine were able to make our compiler self hosting on March 12, 2002." (Source: http://www.gotmono.com/docs/tools/cscomp-intro.html )

What is the difference between what happend on December 28 2001, January 3rd 2002 and Mach 12,2002 ?



My Guess:

Dec 28 it was just able to compile itself, but the resulting compilation probably didn't work properly. On Jan 3, everything was working correctly. Then on Mar 12 they were able to run the compiler using the Mono JIT all during runtime, that is the compiler is compiled by the JIT as it is run.

I should prolly google "self-hosting" though.

Drazula
01-10-2005, 03:53 PM
"Self-hosting" is an ancient term (in computer history), that I haven't heard in a while.

Simply put, the language it compiles is used in the compiler. It works something like this:

Compiler for new language A is written in old language B. A new compiler is written in new language A and compiled using the old language B Compiler. Now you have a compiler written in new language A that compiles new language A. It is now "self-hosted".

Kristian Joensen
01-11-2005, 09:36 AM
I know what self-hosting is, Delphi, Freespascal and GCC are self-hosting, Visual Basic is not.