The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
From: clemc@ccc.com (Clem Cole)
Subject: [TUHS] speaking of early C compilers
Date: Mon, 27 Oct 2014 17:34:18 -0400	[thread overview]
Message-ID: <CAC20D2PvC-gN6-2Jv3TZe5FCaH6=KUfshhQ6dmsGTwqV+F7uqA@mail.gmail.com> (raw)
In-Reply-To: <C9C60AE7-224E-403E-B126-4BBDE8454525@ronnatalie.com>

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 2770 bytes --]

below

On Mon, Oct 27, 2014 at 4:35 PM, Ronald Natalie <ron at ronnatalie.com> wrote:

> The original UNIX system calls returned error by setting the CARRY ("C")
> bit on the PSW.
>
​I've forgotten that factoid.   I remember running into issues with it
because the CMU 11/40E had special CSV/CRET ​

​microcode which we could not use on the 11/34.  I've forgotten all the
hacks we had associated with the system calls.

I do remember, when we moved the CS systems' to EE 11/34 have to unwind a
whole ton of that.   When tjk brought a UNIX/TS based kernel from MH to us
we had reintegrate.   I've forgotten all the details now, I just remember
many, many hours cleaning things up


>
>
> Some idiot decided in the split I/D mode (and later on the VAX) to put a
> ZERO at location zero.   This led to a lot more sloppy coding.

When we did Magix for the the Tek Magonlia, we cheated and put zeros
there.  But as got smarter and better (like Masscomp and Stellar), we have
two versions of the C runtime - "production mode" and "development mode."
In one, we made sure there was a RO page of zeros @ location 0, so we
c​ould take the traps and try to clean things up.   If I recall correctly,
Bourne Shell and ADB were two of the worst offenders.  I also seem to
remember the original V7 library code was riddled with those bugs  ( in
particular I seem to remember that malloc/free code), which is why it was
such a problem - you own code could be clean, but you brought in a library
and got in trouble.

The other things for those days, that has not yet been brought up was the
famous "NUXI" problem.   The  PDP-11 byte swapping was idemic in the code.
  When the first ports to system that were not the same "endianess" came
about - you would find strange things in memory.

Clem

Clem





>
> >
> > The cast syntax, arguably one of the ickiest parts of C syntax, was
> > invented in desperation -- we needed the feature, and there was no good
> > syntax proposal.  I blush to admit that the one Dennis chose is one that
> I
> > suggested, largely because (unlike some of the others) it was easy to
> > implement in Yacc.
>
> Yep, the problem was that the book said that a cast was to perform the
> same operation as assigning a value to an
> invented temporary of the cast type.   This of course, didn't fully
> explain it in the case of some cast behavior.   C++
> had to devolve the C cast into FIVE different kinds of cast to make it
> sane.
>
>
> _______________________________________________
> TUHS mailing list
> TUHS at minnie.tuhs.org
> https://minnie.tuhs.org/mailman/listinfo/tuhs
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20141027/b833bad3/attachment.html>


  reply	other threads:[~2014-10-27 21:34 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-27 10:32 Jason Stevens
2014-10-27 13:03 ` Brantley Coile
2014-10-27 13:34   ` Ronald Natalie
2014-10-27 13:40     ` random832
2014-10-27 14:04       ` Clem Cole
2014-10-27 15:04       ` Dave Horsfall
2014-10-27 17:09 ` scj
2014-10-27 20:35   ` Ronald Natalie
2014-10-27 21:34     ` Clem Cole [this message]
2014-10-28  1:09       ` Dave Horsfall
2014-10-28  2:06         ` Clem Cole
2014-10-28 12:22           ` Ronald Natalie
2014-10-28 12:42             ` Clem Cole
2014-10-28 13:03               ` Ronald Natalie
2014-10-28 22:02                 ` John Cowan
2014-10-27 13:46 Noel Chiappa
2014-10-27 13:54 Jason Stevens
2014-10-27 14:48 Noel Chiappa
2014-10-27 15:09 ` Ronald Natalie
2014-10-27 15:13 ` Dave Horsfall
2014-10-27 16:52 ` Dan Cross
2014-10-27 15:48 Noel Chiappa
2014-10-27 16:25 ` Dave Horsfall
2014-10-28  0:16   ` John Cowan
2014-10-27 16:50 Norman Wilson
2014-10-27 18:16 Nelson H. F. Beebe
2014-10-28  1:55 Jason Stevens
2014-10-28 12:52 ` Ronald Natalie

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAC20D2PvC-gN6-2Jv3TZe5FCaH6=KUfshhQ6dmsGTwqV+F7uqA@mail.gmail.com' \
    --to=clemc@ccc.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).