Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!usc!zaphod.mps.ohio-state.edu!wuarchive!texbell!ficc!peter From: peter@ficc.uu.net (Peter da Silva) Newsgroups: comp.lang.misc Subject: Re: Cheap implementations of languages (Re: Pointers and poor implementations (was: Re: JLG's flogging ...)) Message-ID: <15U2GTBggpc2@ficc.uu.net> Date: 10 Apr 90 12:40:31 GMT References: <14317@lambda.UUCP> Reply-To: peter@ficc.uu.net (Peter da Silva) Organization: Xenix Support, FICC Lines: 32 > > [...] Like, the fact that C can run at all in such a minimal > > implementation has proven to be one of it's strengths. How many PD Fortran > > compilers are there? > I've heard this old saw for years now. But, strangely, not often from > a compiler writer (and, on such rare occasions, said compiler can't > supply any specifics). Well, I took my compiler construction course from the man who wrote the UNIX fortran-77 compiler. He spent some time discussing the drawbacks of Fortran to a compiler writer. I subsequently spent many pleasurable hours playing with a public domain C compiler. I have never seen a public domain Fortran compiler. If Fortran is so easy, where are the compilers for PCs? There are several times as many C compilers available. C is not just a "little" easier to parse, it's a LOT easier to parse. And if you're just going to do a dumb code-generator the parser and symbol table are about the only things to worry about. You also brushed aside lots of problems with the Fortran compiler. How about equivalences? How about commons? How about compiling the good old FORMAT statement (you can't just push it off to a subroutine, because you need to have smarts in there to handle stuff like "WRITE (6,*) ...")? How do you *prevent* arrays from being aliased (answer, you don't... not for a dumb compiler)? How about ... Fortran's completely ad-hoc nature really doesn't make it much fun. Tell you what... you write a PD Fortran compiler and we can compare it in complexity with a PD C compiler and see who wins. -- _--_|\ `-_-' Peter da Silva. +1 713 274 5180. . / \ 'U` \_.--._/ v