Daily Archives: April 16, 2009

Announcing spitbol, a New Project Hosted at Google Code

Robert B. K. Dewar and the other copyright holders have released MACRO SPITBOL under the GPLv3 license.

The project is hosted at Google Code: spitbol.

Here is the email exchange earlier today that resulted in the release of the code:


I found a copy of V37.MIN in my copy of MACRO SPITBOL from Mark Emmer that I acquired about 1991.

I have deleted the SPITBOL-specific parts, save GBCOL, and added the text and the COPYING flle needed to put the code under GPL v3.

Could you please review this edit? I’d like to use it as seed code for a new project, spitbol, to be hosted at Google Code.

I’d also like to release the translators and the runtime code, but it is more urgent to get the Minimal spec out.

If programming is indeed an art, then programming in assembly language is almost a lost art, and I hope that publishing the MINIMAL spec will help to revive interest in programming at the machine level. It might also increase sales of MACRO SPITBOL.

I suggest it would be an interesting challenge to translate MINIMAL into Python bytecode. See http://www.python.org/doc/2.5.2/lib/bytecodes.html

Taken all in all, this is the most beautiful code I have ever seen. I think it is your best work.

It also had a profound influence on SETL, for if we had not developed the “T” series of translators (T10 for the DEC 10, T32 for the Dec VAX, and so forth) then I expect SETL would have died off in the late 1970’s. We did code generators from scratch for the CDC 6600, the IBM 370, and the PDP-11. We didn’t have the resources to do many more. At the least it would have taken a year or more to do each.

I also think that Python would not exist today were it not for the T series of translators. They kept SETL alive long enough so Guido von Rossum could learn about it from Lambert. Guido has publicly stated that Python was inspired by SETL.

Publishing the MINIMAL spec would also provide an example of how to revitalize Computer Science education, as discussed in the article you and Ed wrote:


thanks, dave

Mark Emmer, who has maintained SPITBOL for the last fifteen plus years (Thanks, Mark!), responded:

I have no interest in selling Macro SPITBOL. I really need to take down the antique web page. When someone does run me down, I just send them a copy for free.

I’d be happy to see ALL of SPITBOL GPL’d. It’s been on my to-do list for a long time, but I never seem to get around to it.

Robert B. K. Dewar, the principal author of MACRO SPITBOL, responded:

Absolutely, my only remaining reservations were about protecting your (Mark’s) interests, so if you are cool with GPL’ing everything, let’s do it!

It’s done. A zip file with the source code can be found here.

I expect more files will follow as those of us who did implementation work decades ago look through our musty archives.

To paraphrase Noam Chomsky, colorless green ideas do sometimes sleep furiously.

Announcing setl, a New Project Hosted at Google Code

I have started a new Google Code project, setl, to pursue work on SETL.

The immediate goal is to provide a high-quality SETL compiler, based on Python and written in Python. The project will also attempt to collect many algorithms written in SETL, including, for example, an executable specification of Andrew “Tridge” Tridgell’s rsync algorithm.

Simply put, SETL (SET Language), is the best programming language yet created. Based on the theory of finite sets, it allows for the executable specification of algorithms at a very abstract level. SETL permits specifying the essence of an algorithm in its purest form, without the intrusive details found in lesser programming languages.

SETL was created in 1969 by the late Prof. Jacob T. “Jack” Schwartz of NYU’s Courant Institute of Mathematical Sciences (CIMS). I was the second project member. I wrote the first SETL implementation. I was also the principal designer and implementor of LITTLE, a FORTRAN-like language that was used to write several SETL implementations. I worked on the SETL project until 1987, including leading the effort to translate NYU/AdaEd, the world’s first validated Ada compiler, from SETL to C, work that resulted in the first validated Ada compiler for the IBM PC-AT.

SETL is best viewed as an extension of Python. Python is a subset of SETL, so every valid Python program is also a valid SETL program.

All interested parties are invited to join.

Those old-timers like myself who once worked on the SETL project are invited to join as charter members.

I have also started a new group at LinkedIN, SETL Programming Language.


  • Pages

  • April 2009
    M T W T F S S
  • RSS The Wayward Word Press

  • Recent Comments

    daveshields on SPITBOL for OSX is now av…
    Russ Urquhart on SPITBOL for OSX is now av…
    Sahana’s Respo… on A brief history of Sahana by S…
    Sahana’s Respo… on A brief history of Sahana by S…
    James Murray on On being the maintainer, sole…
  • Archives

  • Blog Stats

  • Top Posts

  • Top Rated

  • Recent Posts

  • Archives

  • Top Rated