[HN Gopher] Whitesmiths C compiler: One of the earliest commerci...
       ___________________________________________________________________
        
       Whitesmiths C compiler: One of the earliest commercial C compilers
       available
        
       Author : todsacerdoti
       Score  : 89 points
       Date   : 2025-06-23 14:25 UTC (4 days ago)
        
 (HTM) web link (github.com)
 (TXT) w3m dump (github.com)
        
       | sizzzzlerz wrote:
       | That brings back some memories from my early days. I worked on a
       | project that had decided to use the newish C language for a
       | 68000-based system. They chose Whitesmith compiler for it,
       | probably because it was the only one available. For some reason,
       | I was selected to attend a class on learning C and became
       | responsible for installing the compiler and assisting the other
       | engineers on using it. The project was ultimately successful but
       | I don't recall what issues we had with it. I do remember
       | contacting Whitesmith a couple of times to resolve some problems.
       | I guess it possible I was talking directly to P.J. Plauger
       | himself, although, at that time, I would have had no idea who he
       | was.
        
         | vaxman wrote:
         | ..directly while also visualizing his neck veins xD
        
         | TomMasz wrote:
         | I remember using that compiler for M68K in the mid-80s, cross-
         | compiling on a DEC Vax. The debug monitor we were using only
         | displayed hex, no disassembly. The compiler was so predictable
         | that I could locate the memory location for any C statement
         | easily. It made patching code in memory a simple task.
        
         | julian55 wrote:
         | It brings back memories for me too. This compiler was my first
         | introduction to C, before that I'd used Pascal or Fortran. I
         | worked on Z80 but we also had a 68K project which ran
         | Whitesmith's Idris UNIX clone before we got real System III
         | ported
        
       | vaxman wrote:
       | Mind. Blown.
       | 
       | On DEC systems, I programmed using FORTRAN, BLISS, MACRO and (on
       | GiGi and RSTS/E) in BASIC for a long time.. then one day the Bell
       | Labs spinoff I worked for bought a Whitesmith's C license for the
       | VAXcluster (for probably oodles of money) and I was transferred
       | into a group headed by the guy who wrote UNIX's malloc
       | implementation a long time before I came along. He hated VMS as
       | much as I hated C. He couldn't use UNIX because it only ran on
       | dogshit computers. I couldn't use FORTRAN because someone read a
       | book that said C was cool. We all carried around our K&R pamphlet
       | books and the Whitesmith's manual (which the Indian workers would
       | mispronounce with three syllables lol). The compiler had all
       | kinds of issues on VMS. Eventually, DEC released VAX-11 C (still
       | have my little 5x7" orange book) and that was enough to make me
       | give up (the truly wonderful) VAX FORTRAN and MACRO/BLISS
       | compilers. My home setup (it was not common for anyone to have
       | home setups then, even programmers) was all assembler, FORTH,
       | Pascal and BASIC but with the shift to C at work, I finally sold
       | a kidney and bought Lattice C and later Aztec C and after moving
       | to the Mac (as I sealed my Amigas into the boxes in the garage
       | where they remain to this day), MPW C, THINK C and CodeWarrior C,
       | MS Visual C, before Yggdrasil Linux...GNU C, then GNU Objective C
       | and now (needle scratch silence) Swift? All started with
       | Whitesmith's C...
        
         | eej71 wrote:
         | I'm old. I instantly recognized your username.
        
         | robinsonb5 wrote:
         | If any of those Amigas had a battery backed clock, please
         | remove the batteries at the earliest opportunity and neutralise
         | the area affected by any leakage with a mild acid such as lemon
         | juice. They'll almost certainly have leaked by now but the
         | longer it's left the worse the damage will be.
        
           | gjvc wrote:
           | Absolutely this. The Varta batteries of the 1990s have
           | inflicted awful irrepebal damage on many systems of the time.
           | Especially sad when people thought they were keeping them
           | safe in their attic and then unpacked them to find the
           | motherboard full of dead components.
        
         | B1FF_PSUVM wrote:
         | > Eventually, DEC released VAX-11 C
         | 
         | A bit raw, with floating point bugs in libm ...
        
       | secondcoming wrote:
       | I remember seeing his name in some Windows header files and
       | always wondered who that person was. Cool.
        
         | SeanCline wrote:
         | Specifically, you'll find his name in the C++ Standard Library
         | headers. Microsoft licensed their standard library from
         | Dinkumware.
         | https://en.wikipedia.org/wiki/P._J._Plauger#Dinkumware
        
           | mrec wrote:
           | Oh wow, I never knew he was an award-winning SF author too. I
           | remember a couple of exchanges with him on the
           | comp.lang.c++.moderated group back in the day.
        
       | jockm wrote:
       | I hope one day the source for Whitesmiths unix clone Idris gets
       | released. IIRC it was the first unix clone, and it would just be
       | nice to have that preserved for history
        
         | tomsmeding wrote:
         | Seems you're in luck! Clicking around on the github page of the
         | posted link, one finds https://github.com/hansake/Whitesmiths-
         | Idris-OS .
        
           | jockm wrote:
           | That is just the binaries, unless I am very much mistaken. I
           | was (trying to) refer to the sources as well
        
           | icedchai wrote:
           | Those look like binaries, not source code?
        
       | chubot wrote:
       | Replaying a good comment from lobsters!
       | https://lobste.rs/s/ybarpv/whitesmiths_c_compiler_one_earlie...
       | 
       | > You might also enjoy the Advent Of Computing podcast episode
       | about IDRIS, Whitesmiths' UNIX clone. History of the company and
       | the compiler included, because they're all related.
       | 
       | https://adventofcomputing.com/
       | 
       | https://youtu.be/UeZpKgtRfx0
        
       | ok123456 wrote:
       | Take a look at some of his other repositories. There's one that
       | has basically every CP/M programming tool.
        
       | mzs wrote:
       | still have code with this indentation style here:
       | https://github.com/hansake/Whitesmiths-C-compiler/blob/main/...
        
         | DamonHD wrote:
         | I have always used (ie since the mid '80s) something like WS
         | layout for C and its descendants. Only much later did I hear
         | that name for it. Often unfashionable, but I have also been a
         | magazine editor, and like the braces to visually lead the eye
         | down the edge of the code that they surround, like a non-
         | indented text para.
        
           | mzs wrote:
           | I prefer the Sun extensions to Indian Hill for grepability
           | but I see the appeal especially to folks that came from
           | pascal. Look closely at the example echo.c, thats not
           | "#include <stdio.h>" ;) We still have this included in lots
           | of code where I work since it dates from around 1980:
           | % grep '/\*' std.h       /* std.h header file to allow use of
           | Whitesmiths pseudo classes/types. */       /* the pseudo
           | storage classes       /* the pseudo types       /* system
           | parameters       %
           | 
           | And yes for me there are ~600 files I still regularly work in
           | written in WS style.
        
       | b0a04gl wrote:
       | file layout is the interface here lol you can literally walk the
       | pipeline.. lexer parser codegen linker all just sit where they
       | should. the dir was the flow. back then structure = filesystem.
       | we can cd trace src to bin just by lookin at folders
        
       ___________________________________________________________________
       (page generated 2025-06-27 23:00 UTC)