Path: csiph.com!xmission!news.snarked.org!border2.nntp.dca1.giganews.com!nntp.giganews.com!news.misty.com!news.iecc.com!.POSTED.news.iecc.com!nerds-end From: Walter Banks Newsgroups: comp.compilers Subject: Re: Compiler implementation language preference ? Date: Sat, 10 Nov 2018 21:46:59 -0500 Organization: Aioe.org NNTP Server Lines: 33 Sender: news@iecc.com Approved: comp.compilers@iecc.com Message-ID: <18-11-007@comp.compilers> References: <18-05-009@comp.compilers> <18-11-001@comp.compilers> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Info: gal.iecc.com; posting-host="news.iecc.com:2001:470:1f07:1126:0:676f:7373:6970"; logging-data="76371"; mail-complaints-to="abuse@iecc.com" Keywords: code, design Posted-Date: 11 Nov 2018 04:42:13 EST X-submission-address: compilers@iecc.com X-moderator-address: compilers-request@iecc.com X-FAQ-and-archives: http://compilers.iecc.com Content-Language: en-US Xref: csiph.com comp.compilers:2119 On 2018-11-09 5:29 p.m., rockbrentwood@gmail.com wrote: > > A test of whether the language, itself, is worth using -- assuming it > is a general purpose language -- is whether you'd be willing to write > the compiler, itself, in it! I put up a branch (and heavily recoded) > version of cparse on my machine, which is in C and has 3 layers of > self-bootstrapping. GCC has several layers of self-bootstrpping, > depending on what you implement from it (and distressingly, it has -- > as of version 6 -- acquired *dependencies* on libraries further > upstream! That's a major no no!) > > GnuBC has a (largely eliminable) layer of bootstrapping to compile > its predefined libraries into itself. > > Knuth's TeX engine is built on top of the (context-sensitive) parser > in Web and/or cweb. The "tangle" and "weave" programs are the core > that has to be bootstrapped. Tangle is Web->Pascal (ctangle cweb->C); > weave is Web->TeX, cweave is cweb->TeX; (and all this is a setup for > TeX.web, which has to be compiled via Web). > > Go is also self-built. I would argue against that suitability test with the following simple logic. My choice for implementation language is primarily the most suitable language to implement the compiler. Part of what you are suggesting is the compiler bootstrap process that is a very different process. Even for that I would argue against only using the same language As one of several possible choices including cross compiling on another platform. w..