Re: Self compiling compiler
Mon, 22 Aug 2016 15:56:29 -0700 (PDT)

          From comp.compilers

Related articles
[6 earlier articles]
Re: Self compiling compiler (Jens Kallup) (2016-03-31)
Re: Self compiling compiler (Kaz Kylheku) (2016-04-03)
Re: Self compiling compiler (ERSHC) (2016-04-02)
Re: Self compiling compiler (Nils M Holm) (2016-04-04)
Re: Self compiling compiler (2016-05-25)
Re: Self compiling compiler (2016-05-28)
Re: Self compiling compiler (2016-08-22)
| List of all articles for this month |

Newsgroups: comp.compilers
Date: Mon, 22 Aug 2016 15:56:29 -0700 (PDT)
Organization: Compilers Central
References: 16-03-013 16-05-006 16-05-008
Injection-Info:; posting-host=""; logging-data="55430"; mail-complaints-to=""
Keywords: history
Posted-Date: 23 Aug 2016 12:43:57 EDT

On Wednesday, May 25, 2016 at 7:07:16 PM UTC-5, wrote:
> ...use the February 1985 printout PDFs

On Sunday, May 29, 2016 at 8:02:22 PM UTC-5, wrote:
> I transcribed much of the version 1 PDF. It has to be cross-checked...

Done. Paul McJones posted the transcription of Version E from 1985 ...

... 450 pages of printout verified against the 1986 so as to minimize diffs.
That resolves most of the 365 places printout got clipped and restores most of
the spaces and tabs.

Not all the files required for compilation were in the printout; stuff would
have to be scavenged from the 1986 version and pulled back -- if necessary --
to the earlier dialect. Neither version is in a C++ dialect recognized today.
It compiles itself and only the 1986 version has C files.

If interested in doing work on self-compiling compilers; picoc can be found on
the net -- a C interpreter. It is only about 4000 lines when in minimal
configuration. However it is (self-described) legacy code and serious recoding
and redesign of the data structures will be needed; particularly to remove the
"God" objects that the entire parser; stack frame and lexer states were each
wrapped up in. The parser is recursive descent with backtracking. But the
grammar processed by it is not large enough to allow the interpreter to run
itself. A large part of the complication is that it uses no byte-code
compiling (but yet you gotta do something with the function bodies and loop
bodies -- you'll have to look and see how it's handled.)

Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.