More Meta-TWOG

DATE: 2014-01-03

Merry Christmas and a Twoggy New Year.

I took the week off for Christmas, and have been able to putter around
Twenex a bit.

1. Twog About TWOG

While I'm waiting for my assembly language programming book, I decided
there's nothing wrong with a little bit of hideous ad-hocery if it's
for a good purpose like snazzing up TWOG's WWW interface. 

What I'd like to write is a quick and dirty program that reads the list
of files in a directory (generated by @DIRECTORY), reads each file to
extract a title and date, then outputs a blog-style HTML index file.
Maybe following-up with programs to generate XML feeds, ...

I've considered a number of languages for this ad-hoc programming:

  X Fortran: The most retro of programming languages, and the Twenex 
    compiler makes tiny executable files[1]. However, Twenex Fortran 
    has almost no support for strings beyond printing literals.

  X Cobol: Also retro and crufty in its own, business-oriented way. The
    compiler makes tiny executables for simple Cobol programs, too.
    Took some help from the alt.sys.pdp10 crowd to figure out the magic
    words to make Cobol read a file. Then realized that the Twenex 
    compiler is a refugee from TOPS-10 and can handle ONLY files with
    exactly 6.3-character names. Is renaming every TWOG file with a 6.3 
    name worth the fun of reviving my old Cobol skills? Probably not.

  ? InterLisp: This language looks more interesting everytime I look at
    it. I was very close to running with it, but the conceptual leap to
    Lisp is still a little too daunting for me. Hurt by not having a 
    good tutorial that I can find. The Preface recommends "The Lisp 1.5
    Primer", but it doesn't count as ad-hoc programming if I have to 
    read two manuals before I can write working code. I will be back, 
    though.

  * C: Yes, the Twenex compiler makes huge executables, but it's the 
    most familiar and therefore rough and ready language here. I already
    have a program that can do simple parsing on the output from 
    @DIRECTORY.

2. Fun and games

I am ambitious to compile and run DECWAR and EMPIRE on Twenex. However, 
doing either one taxes or exceeds my disk quota, so I'm putting them on 
the back-burner until I can negotiate a quota increase, or create another
account dedicated to one or both games.

I tried Empire for the first time with the PC version. It's fun, but
could use some tuning to make it less of a time sink. A game on a
scale intermediate between EMPIRE and its inspiration Hammurabi would
be ideal for single play.

3. Doodle

VULCAN's DOODLE program give even more impetus to my quest to learn 
TOPS-20 assembly language. I'm amazed at what he made a teletype
terminal do. Check it out if you haven't already:

     @EX <VULCAN.SHARDIR>DOODLE


[1]: A Fortran Hello World executable is about 3000 bytes in length.
     Compare with 1000 bytes for a similar program in MACRO assembly
     language, and 20,000 bytes for one in C.