Hacker News new | past | comments | ask | show | jobs | submit login

There was a lot more innovation in computer architectures in the 80s and 90s. C89 is designed to permit implementation on unconventional hardware like the Lisp machine. C's flexible targeting is its greatest asset.



Cs ability to run on "unconventional" (though there is little unconventional about the Lisp Machine, it is a just a stack based machine) long predates C89 (specifically).

ZETA-C, a C compiler specific to the Lisp Machine, was already fully fledged by 1987 or there about. Don't have notes on when ZETA-C came to be, but it was much earlier than that, e.g., some of the headers are dated 1984.

One cool thing about ZETA-C was you could embed Lisp code in between C code:

    extern FILE *stdin, *stdout, *stderr;
    #lisp
      ;; We don't want this file to "own" these
     (zeta-c:zclib>initialize-file-pointer |stdin| 0)
     (zeta-c:zclib>initialize-file-pointer |stdout| 1)
     (zeta-c:zclib>initialize-file-pointer |stderr| 2)
    #endlisp


Yep right when everyone

   1. Standardized on two's complement.
   2. Little endian.
   3. We went from word based memory systems to line based ones.
   4. RISC lost out to super scalar designs.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: