SNOBOL was a programming language developed by Ralph Griswold with J. F. Poage and I. P. Polensky at Bell Labs in the 1960s. Focused on string pattern-matching as a better way to process text, it culminated in SNOBOL4, a perpetual favourite of university Computer Science courses covering programming languages. SNOBOL4 initially ran on IBM mainframes running OS/360 and was quickly ported to MTS (Michigan Terminal System), a mainframe operating system used at several universities.
Because it was in the Public Domain, with source code provided, and an Assembler Macro-based design approach that simplified Portability, the 1970s saw versions running on a broad range of Computing platforms, both mainframes and mini-computers. Early on, the Illinois Institute of Technology developed and marketed a SNOBOL4 compiler that they called SPITBOL, to improve execution times — SNOBOL4 had been implemented using an interpretive approach, rather than as a compiled language.
- http://www.snobol4.org provides a list of SNOBOL4 resoures
- http://www.snobol4.com is Catspaw’s site, a combination of links and information about the company’s SNOBOL4 implementations
- SNOBOL has a Yahoo! Tech Group at http://tech.groups.yahoo.com/group/snobol
- http://portal.acm.org/citation.cfm?doid=321203.321207 provides access to the original 1964 ACM article on SNOBOL
When Ralph Griswold moved from Bell Labs to found the University of Arizona’s Computer Science department in 1971, he created a new programming language that he named Icon. He knew that he needed to leave the FORTRAN feel of SNOBOL’s syntax behind, to address the clear benefits of structured programming. Ralph chose a C-like syntax, correctly guessing that C would dominate as a programming language in the decades ahead.
Although Dr. Griswold retired in 1995 and passed away in 2006, Icon lives on, and the latest version has been re-validated on the current versions of Ubuntu and MacOS.
Icon has its own News Group: comp.lang.icon
Over the years, several programming languages have borrowed from Icon, but there have also been some direct descendants of Icon:
- Unicon – a major extension of Icon – http://www.unicon.org
- Idol – an older object-oriented extension to Icon – http://www.cs.arizona.edu/icon/ftp/doc/tr90_10.pdf
- JCon – a Java-based implementation of Icon – http://www.cs.arizona.edu/icon/jcon