On Fri, Jul 2, 2021 at 12:58 PM Paul Winalski <paul.winalski(a)gmail.com>
wrote:
I sent a reply to this message to the TUHS mailing
list but gmail may
have rejected it and flagged it as spam.
Please email me privately to let me know if the message made it to the
list.
-Paul W..
On 7/1/21, scj(a)yaccman.com <scj(a)yaccman.com> wrote:
I saw this post and it reminded me of a meeting
that Dennis and I had
with Bill Wulf. At one point, Dennis decided to write an optimizer but
gave up after a week or two because when he had coded the data
structures he needed he had filled up the PDP-11 memory! It was a very
strong part of the Unix meme that Unix and C would run on small
computers since most of the universities couldn't afford bigger ones at
the time.
When PCC came along and started running on 32-bit machines, I started
thinking about algorithms for optimization. A problem that I had no
good solution for could be illustrated by a simple piece of code:
x = *p;
y = *q;
q gets changed
*q = z;
The question is, do I need to reload x now because q might have been
changed to point to the same place as p? At around this time, Al Aho
was invited to go to CMU and give a talk, and he invited me to come with
him. We spent about an hour and a half one-on-one with Bill Wulf -- I
seem to remember a lot of mutual respect going on. But when I asked him
about my problem, he really didn't have much to say about it. I finally
got him to agree that his compiler had a bug. But he said there was a
flag they could set on the compiler that would turn of optimization and
if your program had mysterious bugs, you should use the flag.
I recall that Al, always in search of better algorithms, was a bit
disappointed -- I was a bit more pragmatic about it. On the whole, it
was a good meeting, and the "Engineering ... Compiler" book was one of
my favorites when it came out.
Steve