Answer: Less or more:
SNOBOL4 is thus the best scripting language yet created, as the best way to implement the others is to translate source from them to SNOBOL4.
Oh yeah? Yeah.*
MACRO SPITBOL provides two ways to save the result of a compilation that permits the initiation, or resuumption, of execution wihtout having to do another compiliation of the source.
First, the state may be saved in binary form. This saved file does not include the SPITBOL system itself.
Second, the state AND the complete SPITBOL system may be saved in a binary form called a “load module.” It is thus then possible to use all the powers of the SPITBOL system from within one’s own code.
New datatypes can be created, new functions added, and, most important of all, source code can be generated by one’s own program in the form of SNOBOL4 source and then translated into an intermediate form that is interpreted in as near optimal a way as current technology allows.
I don’t know of any other system that includes this facility. And even if one does, it wll be more efficient to implement it in SNOBOL4 than to implement SNOBOL4 in it.
Very interesting post. But wait! There's way more!
The main power of SNOBOL4 and SETL is that they are executable specifications. A program in SETL is both the definition of an algorithm at a very high level, and its implementation in code that can be efficiently executed.
It was just over a week ago that I first heard of the notion of a “living document.”
[staggers]
This was the result of a brief conversation in Santa Fe, New Mexico, between Mark Emmer and Mike Radow, that took place about a decade ago.
Their idea was to embed the operating environment *within* the document.
I’ve been thinking about this ever since. Indeed, this helped motivate me to do the performance comparisons, to assess just how much work remains to be done. Evidence to date suggests that such documents may be created sooner rather than later.
I think of this as a Portable Execution Format, or PEF.
A PEF document consists not just of a single document, or a collection of documents, but a complete environment that is both an operating system, a software development kit, an application stack, and multiple runtimes, all wedded together using a plugin architecture.
This gentleman sounds like just the person to implement a merging algorithm in assembler. I encourage people to read the entire post.
NOTE *
- SPITBOL is five times faster than Python for integer arithmetic operations;
- SPITBOL is two times faster than Python performing floating point arithmeic;
- SPITBOL is 2.5 times faster than Python performing string operations;
- SPITBOL is seven times faster than Python calling procedures.

