SPITBOL compiler

From Wikipedia, the free encyclopedia

SPITBOL (Speedy Implementation of SNOBOL) is a compiled implementation of the SNOBOL4 language for the IBM System/360 and System/370 family of computers. It was created by Robert Dewar and Ken Belcher at the Illinois Institute of Technology.

Prior to the development of SPITBOL, SNOBOL4 was thought to be slow, memory-intensive, and impossible to compile due to its dynamic nature. While the delayed binding prevented everything from being determined at compile time, SPITBOL was very clever about doing as much as early as possible. SNOBOL programs run under SPITBOL were indeed amazingly fast. Notable was the SPITBOL garbage collector which ran with almost no spare memory.

One contribution of SPITBOL to computer science was to demonstrate the clear distinction between a language and its implementation. Rather than stating that a language itself is slow, it may be more accurate to state that writing a fast implementation is hard. The same issue is current with Java, which is often erroneously called an interpreted language – common implementations may be interpreters, but the language is just the language.

Modern versions of the SPITBOL compiler can still be found, and since 2001 the source code for the original SPITBOL 360 compiler has been made available under the GNU Public License.