All you folks revisiting the Software Tools should remember that there
was an entire movement around the first book, based at Lawrence Berkeley
Lab. The Software Tools group, an offshoot of Usenix, had about 2000
members. We created an almost-entire Unix environment based on a
virtual operating system that we designed, inspired of course by
Kernighan's ideas. The collection was ported to over 50 operating
systems, including some without file systems. This is all still freely
available, and stored with the Unix archives.
Deborah
On 12/1/21 12:59 PM, Clem Cole wrote:
Arnold -- sounds fun. Thank you!!! I'll add it
to my growing pile of
things I want to play with at some point. I too had a wonderful
childhood experience with the SW tools. Somebody had a number of them
running on a VMS box when all we had was the VMS Fortran compiler, no
C yet.
I am curious why did you decide to use byacc? I would have thought
in a desire to modernize and make it more available on a modern system
-- was there something in byacc that could not be done easily in
bison? To be honest, I had thought Robert Corbett did them both and
bison was the successor to byacc, but I'm not a compiler guy - so I'm
suspecting that there must be a difference/reason. As I said, this
is purely curiosity -- an educational opportunity.
Thanks again,
Clem
ᐧ
On Wed, Dec 1, 2021 at 3:41 PM Arnold Robbins <arnold(a)skeeve.com> wrote:
Hi All.
Mainly for fun (sic), I decided to revive the Ratfor (Rational
Fortran) preprocessor. Please see:
https://github.com/arnoldrobbins/ratfor
I started with the V6 code, then added the V7, V8 and V10 versions
on top of it. Each one has its own branch so that you can look
at the original code, if you wish. The man page and the paper from
the V7 manual are also included.
Starting with the Tenth Edition version, I set about to modernize
the code and get it to compile and run on a modern-day system.
(ANSI style declarations and function headers, modern include files,
use of getopt, and most importantly, correct use of Yacc yyval and
yylval variables.)
You will need Berkely Yacc installed as byacc in order to build it.
I have only touch-tested it, but so far it seems OK. 'make' runs
in like 2
seconds, really quick. On my Ubuntu Linux systems, it compiles with
no warnings.
I hope to eventually add a test suite also, if I can steal some time.
Before anyone asks, no, I don't think anybody today has any real use
for it. This was simply "for fun", and because Ratfor has a soft
spot in my heart. "Software Tools" was, for me, the most influential
programming book that I ever read. I don't think there's a better
book to convey the "zen" of Unix.
Thanks,
Arnold