On Jun 30, 2016 10:10 AM, "Marc Rochkind" <rochkind(a)basepath.com> wrote:
Bill Cheswick: "What a different world it would
be if IBM had selected
the M68000 and UCSD Pascal. Both seemed
to me to better better choices at the time."
Not for those of us trying to write serious software. The IBM PC came out
in August, 1981, and I left Bell Labs to write software for it full time
about 5 months later. At the time, it seemed to me to represent the future,
and that turned out to be a correct guess.
Microsoft Basic is well known as the primary initial language for the PC,
but from day one there was another choice called Microsoft Pascal (we used
the IBM Pascal version). It was a considerable extension over classical
Pascal. It had full-blown string manipulation and pointers. With it, I was
able to implement a text editor called EDIX and an nroff-ripoff called
WORDIX. The compiler was full of bugs, but it was a true compiler, and the
programs were small enough and fast enough to work well on the limited 8088
(I think that was the processor) hardware.
I don't know about UCSD Pascal versus MS-DOS, but I think you yourself just
alluded to the processor distinction that Ches was referring to. Of course
it's only of historical interest now, but from a technology standpoint
MC68000 vs Intel 8088 seems like a no-brainer: the 68k is the superior
chip. From a business perspective, I guess it was a very different matter,
but that's not my area and the ship has long sailed over the horizon.
Still, it's fun to speculate and I can't help but think that a 68k-based
IBM PC would have been a nicer machine.
Initially, with no hard drive, I had to switch floppies several times just
to compile one file. Later, I got a 6MB hard drive for
about $3000.
Interestingly, that drive could not even hold one (raw) image from my
current digital camera!
We could not have used Microsoft Basic or UCSD Pascal.
Just a few years later, something called Lattice C came along, and we
switched (back) to C, and stayed with it from there on out.
Something I never understood about the IBM PC: even the 8088 machine was
fairly beefy compared to e.g. a PDP-11/20. The 6th Edition Unix kernel was
objectively pretty small and understandable; mini-Unix showed that that
sort of software could be used on a machine without an MMU. I've never
understood why IBM didn't just write a real OS in a high-level language
instead of saddling the world with MS-DOS. Perhaps it's naive of me, but
even if they didn't use Unix directly, it was an existence proof that such
a thing was possible. I suppose, again, it was less a technical issue and
more a business issue, or perhaps I'm underestimating the amount of work or
missing some of the technical complexities.
- Dan C.