On 3 Jan 2003, Oleg Goldshmidt wrote:

> Shlomi Fish <[EMAIL PROTECTED]> writes:
>
> > And C is the only language that is expected to bootstrap
> > itself.[1]
>
> <snipped to footnote>
>
> > [1] - There are a few exceptions. ghc is an Haskell compiler that is the
> > only tool capable of compiling its own Haskell code. The GNU Ada compiler
> > is written in Ada. There's also a Dylan compiler written in Dylan, but
> > luckily there's also a Dylan interpreter written in C that can
> > compile it.
>
> I cannot sit silent: obviously you are forgetting Lisp Machines
> that ran Lisp interpreters written in Lisp. ;-)
>

LOL.

I mentioned a few cases that made this decision, but naturally there are
others. An interesting case is what they are planning to do in Parrot:

The back-end will be written in C, but the front-end can be written in
higher-level language. Some of them are now written in Perl. Now, they
want to write a Perl 5 compiler for Parrot in Perl 5, compile it to parrot
bytecode, and then use the bytecode as a Perl compiler which can compile
its own code. It will be bootstrapped with the current perl5
implementation.

> Now, going backwards in time from the beginning of the UNIX epoche,
> to the two oldest high level languages that are still in use today:
> Fortran and Lisp. Any self-respecting Lisp/Scheme book shows how to
> write a Lisp engine in Lisp.

I've seen the Meta-Circular Evalutaor of SICP. But I find it hard to
believe that the entire Common Lisp can be re-implemented in itself
(without using the native eval), in a reasonable amount of code that would
fit into a textbook. It's simply too big.

> Was there ever a Fortran compiler written
> in Fortran? The only page that mentions something like that in passing
> is http://www.nersc.gov/~deboni/Computer.history/Mendicino.html.
>

I know that many Fortran compilers were written throughout the ages, but I
don't know in what languages. An optimizing Fortran compiler was recently
voted as one of the top ten algorithms of the 20th century. Now, in "the
Mythical Man-Month" Fred Brooks describes how they wrote OS/360 in
Assembler, but that he would then recommended to use a higher-level
language instead, preferabbly PL/I.

Regards,

        Shlomi Fish

>
> --
> Oleg Goldshmidt | [EMAIL PROTECTED]
>
> =================================================================
> To unsubscribe, send mail to [EMAIL PROTECTED] with
> the word "unsubscribe" in the message body, e.g., run the command
> echo unsubscribe |mail [EMAIL PROTECTED]
>



----------------------------------------------------------------------
Shlomi Fish        [EMAIL PROTECTED]
Home Page:         http://t2.technion.ac.il/~shlomif/
Home E-mail:       [EMAIL PROTECTED]

"Let's suppose you have a table with 2^n cups..."
"Wait a second - is n a natural number?"


=================================================================
To unsubscribe, send mail to [EMAIL PROTECTED] with
the word "unsubscribe" in the message body, e.g., run the command
echo unsubscribe | mail [EMAIL PROTECTED]

Reply via email to