*** Welcome to piglix ***

SNOBOL

SNOBOL
Paradigm Imperative, Unstructured
Designed by David J. Farber, Ralph E. Griswold and Ivan P. Polonsky
Developer David J. Farber, Ralph E. Griswold, Ivan P. Polonsky, and Bell Labs
First appeared 1962; 55 years ago (1962)
Stable release
SNOBOL4 / 1967; 50 years ago (1967)
Major implementations
SNOBOL, SPITBOL
Influenced
Bracmat, Icon, Lua, SL5

SNOBOL (StriNg Oriented and symBOlic Language) is a series of computer programming languages developed between 1962 and 1967 at AT&T Bell Laboratories by David J. Farber, Ralph E. Griswold and Ivan P. Polonsky, culminating in SNOBOL4. It was one of a number of text-string-oriented languages developed during the 1950s and 1960s; others included COMIT and TRAC.

SNOBOL4 stands apart from most programming languages of its era by having patterns as a first-class data type (i.e. a data type whose values can be manipulated in all ways permitted to any other data type in the programming language) and by providing operators for pattern concatenation and alternation. In later object-oriented languages, such as JavaScript, patterns are a type of object, and admit various manipulations. Further, strings generated during execution can be treated as programs and executed (as in the eval function of other languages).

SNOBOL4 was quite widely taught in larger US universities in the late 1960s and early 1970s and was widely used in the 1970s and 1980s as a text manipulation language in the humanities.

In the 1980s and 1990s its use faded as newer languages such as AWK and Perl made string manipulation by means of regular expressions fashionable. SNOBOL4 patterns subsume BNF grammars, which are equivalent to context-free grammars and more powerful than regular expressions. The "regular expressions" in current versions of AWK and Perl are in fact extensions of regular expressions in the traditional sense, but regular expressions, unlike SNOBOL4 patterns, cannot be recursive, which gives a distinct computational advantage to SNOBOL4 patterns. However, since Perl 5.10 (released in December 2007), Perl regular expressions can be recursive.


...
Wikipedia

...