<div dir="ltr">Since it came up in this thread, here's my review of Coherent in BYTE Magazine (1985):<div><br></div><div><a href="https://www.mrochkind.com/mrochkind/docs/Byte-Pick-Coherent-Theos.pdf">https://www.mrochkind.com/mrochkind/docs/Byte-Pick-Coherent-Theos.pdf</a><br></div><div><br></div><div>Marc</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Mar 11, 2024 at 11:13 AM Paul Ruizendaal <<a href="mailto:pnr@planet.nl">pnr@planet.nl</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Thu, Mar 7, 2024, 4:14 PM Tom Lyon <pugs78 at <a href="http://gmail.com" rel="noreferrer" target="_blank">gmail.com</a>> wrote:<br>
<br>
> For no good reason, I've been wondering about the early history of C<br>
> compilers that were not derived from Ritchie, Johnson, and Snyder at Bell.<br>
> Especially for x86.  Anyone have tales?<br>
> Were any of those compilers ever used to port UNIX?<br>
<br>
An unusual one would be the “revenue bomb” compiler that Charles Simonyi and Richard Brodie did at Microsoft in 1981.<br>
<br>
This compiler was intended to provided a uniform environment for the menagerie of 8 and 16-bit computers of the era. It compiled to a byte code which executed through a small interpreter. This by itself was hardly new of course, but it had some unique features. It generated code in overlays, so that it could run a code base larger than 64KB (but it defined only one data segment). It also defined a small set of “system” commands, that allowed for uniform I/O. I still have the implementation spec for that interpreter somewhere.<br>
<br>
This compiler was used for the first versions of Multiplan and Word, and my understanding is that the byte code engine was later re-used in Visual Basic. I think the compiler also had a Xenix port, maybe it even was Xenix native (and at this time, Xenix would still essentially have been V7).<br>
<br>
I am not sure to what extent this compiler was independent of the Bell compilers. It could well be that it was based on PCC, Microsoft was a Unix licensee after all and at the time busy doing ports. On the other hand, Charles Simonyi would certainly have been capable of creating his own from scratch. I do know that this compiler preceded Lattice C, the latter of which was distributed by Microsoft as Microsoft C 1.0.<br>
<br>
Maybe others know more about this Simonyi/Brodie compiler?<br>
<br>
Paul<br>
<br>
Notes:<br>
<a href="http://www.memecentral.com/mylife.htm" rel="noreferrer" target="_blank">http://www.memecentral.com/mylife.htm</a><br>
<a href="https://web.archive.org/web/20080905231519/http://www.computerworld.com/softwaretopics/software/appdev/story/0%2C10801%2C76413%2C00.html" rel="noreferrer" target="_blank">https://web.archive.org/web/20080905231519/http://www.computerworld.com/softwaretopics/software/appdev/story/0%2C10801%2C76413%2C00.html</a><br>
<a href="http://seefigure1.com/images/xenix/xenix-timeline.jpg" rel="noreferrer" target="_blank">http://seefigure1.com/images/xenix/xenix-timeline.jpg</a></blockquote></div><br clear="all"><div><br></div><span class="gmail_signature_prefix">-- </span><br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><i>My new email address is <a href="mailto:mrochkind@gmail.com" target="_blank">mrochkind@gmail.com</a></i></div></div></div>