[TUHS] Ratfor revived!

Brantley Coile brantley at coraid.com
Fri Dec 3 00:35:40 AEST 2021


I lead a dual technological life. I usually don't talk about one side on email lists about the other. Sometimes creates heat. But I'm completely convinced of the value of both sides. Let's call one 1127, after the department number at Bell Labs, and the other Wirthian. Thomsonian and Wirthian would also be appropriate. 

I loved the WPNMFPL paper! Later, Wirth fixed all the language issues mentioned in that paper with his last language, Oberon. Some issues in the paper are issues of taste, and Oberon is, well, strongly Wirthian, so one might object to it if their taste corresponds with BWK's.

DMR said at HOPL that Pascal and C have a lot in common. He said one might even expect there was information cross flow, which he stated there wasn't. That was what DMR said, not me.

I program in C on Plan 9 because it's the best tool for what I'm doing. I could easily see me living in Oberon. I might even like it better. Some days. But then... 

See how great it is to live a duplicitous life. Best of both.

  Brantley

> On Dec 2, 2021, at 9:15 AM, Clem Cole <clemc at ccc.com> wrote:
> 
> Henry -- most people that I am aware used the original Fortran-IV version since that was the Lingua-Franca.  The Pascal version was a few years later, and frankly other than to read the book, I personally never ran the results from them.  But I can say I did use the original Fortran version under VMS back in the day.  As bwk says in the Pascal edition, it was actually a difficult thing to do because Pascal lacked many features that really made it uniform across implementations, portable between systems themselves, and as a reasonable systems programming language.  See: Why Pascal is Not My Favorite Programming Language
> 
> Clem
>> 
> On Thu, Dec 2, 2021 at 12:44 AM Henry Bent <henry.r.bent at gmail.com> wrote:
> Thank you, Clem.  I am working on getting the tools running in DOSBox, which seemed most straightforward.
> 
> The Byte article (the scan of which I am very grateful for; not having to go trawling through the stacks at the Oberlin College library is always a plus) claims that the tools have been implemented on:
> 
> ACOS
> Amdahl
> Apollo
> AN/UYK
> Burroughs
> CDC
> Cray
> Data General
> DEC
> FACOM
> GEC
> HP
> HITAC
> Honeywell
> IBM
> Intel
> Interdata
> Modcomp
> Multics
> NCR
> Perkin-Elmer
> Prime
> Rolm
> SEL
> Tandem
> Univac
> Wang
> Xerox
> CP/M Machines
> MS/DOS Machines
> UNIX Machines
> 
> Which is quite the list; I've never even heard of a few of those!  Based on the files in the UNIX Archive, am I to assume that most of those ports took advantage of a native Pascal compiler?  That's how I'm planning to bring the tools up on my local RT-11 machine.
> 
> -Henry
> 
> On Wed, 1 Dec 2021 at 19:34, Clem Cole <clemc at ccc.com> wrote:
> https://www.tuhs.org/Archive/Applications/Software_Tools/
>> 
> On Wed, Dec 1, 2021 at 5:25 PM Henry Bent <henry.r.bent at gmail.com> wrote:
> On Wed, 1 Dec 2021 at 17:17, Deborah Scherrer <dscherrer at solar.stanford.edu> wrote:
> 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.
> 
> Could you provide a link to said environment, and suggest what sort of machines it might have run on?  I probably have something here that will do it, and I am very interested.
> 
> -Henry
>  
> 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 at 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



More information about the TUHS mailing list