On Tue, Dec 17, 2024 at 3:38 PM Greg A. Woods <woods(a)robohack.ca> wrote:
One thing I left unstated in my question, and indeed
in my 1988 question
as well, was more or less: "If vc is just a macro processor, why might
I want to use it instead of any other available macro processor?"
Well, I don't remember much about why I designed vc. I was certainly very
aware of language independent macro processors. I had read McIlroy's 1960
paper when I was still in college. ("Macro instruction extensions of
compiler languages"
CACM, Volume 3, Issue 4) And, I knew about m6, too.
My guess is that there might have been two reasons for vc: That the other
choices were too complicated for the programmers we were supporting, and
that it was focused on excluding and including large blocks of text, which
as I recall, were awkward with m6 (and maybe m4).
In those days at Bell Labs we didn't think too hard about whether a new
command should be added to the system. Ironically, this was true even
though the UNIX kernel was a minimalist system and was as famous for what
it left out as for what it was in it. No management approval was necessary
for a new command; we just put it into /usr/bin on our PWB system (not the
research system) along with a man page. Although we were in NJ, it was
pretty much the wild west. Then, a few years later, the PWB system was
packaged up and released into the world.
Marc