andreas_tex at freenet.de
Sat May 16 13:58:06 CEST 2020
I can not speak to Don's decision to move from Pascal/WEB to C/CWEB
almost 30 years ago, nor do I know how Silvio Levy "convinced" him to
make the switch. ;o) However, from the various sources, I detect this
possible string of events:
According to the copyright entry in CWEB's 'common.w' source (see
https://github.com/ascherer/cweb/blob/master/common.w#L7) I guess that
Silvio wrote CWEB version 1.0 in 1987, version 2.0 in 1990, and version
3.0 in 1993. I have no information if Don was involved with CWEB from
the get-go or if he joined underway.
Don's first CWEB example program 'SHAM' (see
https://www-cs-faculty.stanford.edu/~knuth/programs/sham.w) (the earlier
'HAM' has moved down to 'HAMDANCE') is marked '1992' and was clearly
created in preparation of "The Stanford HraphBase' (see
http://www-cs-faculty.stanford.edu/~knuth/sgb.html), which appeared in
print and software in 1994. My best guess is that Don used C as the
implementation language, because it was far more portable than Pascal at
that time (or that he simply tried "something new and fashionable").
The history of WEB is listed in both sources 'tangle.web' and
'weave.web' (see https://github.com/ascherer/web/blob/master/weave.web).
From it I deduce that WEB's development was active from 1981 to 1993,
with major new versions 3.0 and 4.0 in 1989. It _might_ be possible
that Don already used new ideas from CWEB and 'backported' them to WEB
at that time.
After 1993 (sic! "The CWEB System of Strctured Documentation" was
published; see http://www-cs-faculty.stanford.edu/~knuth/cweb.html), WEB
development seems to have come to a halt (there was a final change in
'ctangle.web' in 2002) and the long list of "Programs to Read" starts.
Another major result is Don's MMIX in 1999, also written in CWEB (see
https://www-cs-faculty.stanford.edu/~knuth/mmixware.html). Others might
want to add bits of history of 'Web2c' here. :o)
PS: You might want to check out some "Oral history"
(http://www-cs-faculty.stanford.edu/~knuth/news.html), maybe there's
more information about Don's use of CWEB.
More information about the texhax