I'm coming into this late (and tired, been working on my water system
and the carbs on my boat all day) but I *loved* the single namespace
for all structure fields.
Instead of
p->size
we have
p->st_size
and I instantly know that p is a struct stat pointer.
I get that it doesn't scale but man, oh man, do I love the early Unix
data structures that had one namespace. I kinda wish you hadn't fixed
that Steve.
What was the push that made you fix it?
On Tue, Oct 30, 2018 at 03:01:55PM -0700, Steve Johnson wrote:
The closest I came was when we went from a single
namespace for all
structure names to a namespace for each structure, and references that
were checked using the pointer type of the structure pointer.
My code was a nightmare, and some of the old Unix code was at least a
bad dream.???? I had to start out pretending to have a single
namespace, but when I saw the use of an actual structure pointer I had
to do it the new way.?? As I recall when I saw something that would
not have been legal with the old rules (for example, two different
structures with the same element name but different offsets) then I
threw
the switch and demanded the new way.??
There were certainly system changes that were flash cut.?? For
example, changing the file system format -- there was no attempt to
allow both, which meant that the conversion program got one shot to
get it right.?? And it didn't always manage that...
Steve
----- Original Message -----
From:
david(a)kdbarto.org
To:
"Steve Johnson" <scj(a)yaccman.com>
Cc:
"The Eunuchs Hysterical Society" <tuhs(a)tuhs.org>
Sent:
Mon, 29 Oct 2018 12:02:29 -0700
Subject:
Re: [TUHS] Archaic yacc C grammar
On Oct 29, 2018, at 10:52 AM, Steve Johnson <scj(a)yaccman.com [1]>
wrote:
We actually had a pretty good system for making changes like that.??
First, we would change
the compiler to accept both the old and the new.???? Then we would
produce a warning
that on a particular date the old would no longer work.?? Then we made
the old an error
and printed a message about how to fix it.???? Eventually, we just let
it be a syntax error.
This process was applied many times on the way from typeless B to
strongly typed C.
Was there ever a time when a change was desired that you couldn???t
accept both
the old and the new?
David
Links:
------
[1] mailto:scj@yaccman.com
--
---
Larry McVoy lm at
mcvoy.com http://www.mcvoy.com/lm