FACTOID # 132: Women make up more than 10% of the prison population in only six countries: Thailand, , Qatar, Paraguay, Costa Rica, and Singapore.
 
 Home   Encyclopedia   Statistics   Countries A-Z   Flags   Maps   Education   Forum   FAQ   About 
 
WHAT'S NEW
RELATED ARTICLES
People who viewed "Snobol" also viewed:
RECENT ARTICLES
More Recent Articles »
 

Encyclopedia > Snobol
SNOBOL
Paradigm: multi-paradigm: object-oriented, functional, logic
Appeared in: 1962
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
Typing discipline: Unknown
Major implementations: SNOBOL, SPITBOL
Influenced: Icon

SNOBOL (StriNg Oriented symBOlic Language) is a computer programming language developed between 1962 and 1967 at AT&T Bell Laboratories by David J. Farber, Ralph E. Griswold and Ivan P. Polonsky. (The name is a jocular reference to COBOL and ALGOL, but these languages have no other connection and no other notable similarities). A programming paradigm is a paradigmatic style of programming (compare with a methodology, which is a paradigmatic style of doing software engineering). ... A multiparadigm programming language is a programming language that supports more than one programming paradigm. ... In computer science, object-oriented programming is a computer programming paradigm. ... Functional programming is a programming paradigm that conceives computation as the evaluation of mathematical functions and avoids state and mutable data. ... Logic programming (sometimes called logical programming) is programming that makes use of pattern-directed invocation of procedures from assertions and goals. ... 1962 (MCMLXII) was a common year starting on Monday (the link is to a full 1962 calendar). ... As of 2004, David J. Farber is a faculty member of the Computer and Information Science Department and of the Electrical Engineering Department at the University of Pennsylvania. ... Ralph Griswold is Regents Professor Emeritus in the Department of Computer Science at the University of Arizona, having retired in 1995. ... Bell Laboratories (also known as Bell Labs and formerly known as AT&T Bell Laboratories and Bell Telephone Laboratories) was the main research and development arm of the United States Bell System. ... In computer science, a type system defines how a programming language classifies values and expressions into types, how it can manipulate those types and how they interact. ... SPITBOL is a compiled implementation of SNOBOL4. ... Icon is a very high-level programming language featuring goal directed execution and excellent facilities for managing strings and textual patterns. ... A Lego RCX Computer is an example of an embedded computer used to control mechanical devices. ... A programming language is an artificial language that can be used to control the behavior of a machine (often a computer). ... 1962 (MCMLXII) was a common year starting on Monday (the link is to a full 1962 calendar). ... 1967 (MCMLXVII) was a common year starting on Sunday of the Gregorian calendar (the link is to a full 1967 calendar). ... AT&T Inc. ... Bell Telephone Laboratories or Bell Labs was originally the research and development arm of the United States Bell System, and was the premier corporate facility of its type, developing a range of revolutionary technologies from telephone switches to specialized coverings for telephone cables, to the transistor. ... As of 2004, David J. Farber is a faculty member of the Computer and Information Science Department and of the Electrical Engineering Department at the University of Pennsylvania. ... Ralph Griswold is Regents Professor Emeritus in the Department of Computer Science at the University of Arizona, having retired in 1995. ... COBOL is a third-generation programming language. ... ALGOL (short for ALGOrithmic Language) is a programming language originally developed in the mid 1950s which became the de facto standard way to report algorithms in print for almost the next 30 years. ...


During the 1950s and 1960s there was a flourishing of interest in special-purpose computer languages. SNOBOL was one of a number of text-string-oriented languages, and one of the more successful; others included COMIT and TRAC. COMIT was the first string processing language (compare SNOBOL, TRAC, and Perl), developed on the IBM 700/7000 series computers by Dr. Victor Yngve and collaborators at MIT from 1957-1965. ... TRAC (for Text Reckoning And Compiling) is a computer language developed in the early 1960s by Calvin Mooers (1919-1994). ...


SNOBOL was widely used in the 1970s and 1980s as a text manipulation language in the humanities, but in recent years, its popularity has faded as newer languages such as Awk and Perl have made string manipulation by means of regular expressions popular; it is now mostly a special interest language used mainly by enthusiasts, and new implementations are rare. However, SNOBOL's pattern matching algorithm is in many ways more powerful than regular expressions, and well-written programs compiled using the SPITBOL implementation of the SNOBOL4 programming language are often ten or more times faster in execution than a corresponding Perl program.[citation needed] The classic implementation was on the PDP-10; it has been used to study compilers, formal grammars, and artificial intelligence, especially machine translation and machine comprehension of natural languages. The original implementation was on an IBM 7090 at Bell Labs, Holmdel, N.J. SNOBOL4 was specifically designed for portability; the first implementation was on an IBM 7094 but it was rapidly ported to many other platforms. The 1970s decade refers to the years from 1970 to 1979, inclusive. ... The examples and perspective in this article or section may not represent a worldwide view. ... The examples and perspective in this article may not represent a worldwide view. ... AWK is a general purpose computer language that is designed for processing text based data, either in files or data streams. ... Perl, also Practical Extraction and Report Language (a backronym, see below) is a dynamic procedural programming language designed by Larry Wall and first released in 1987. ... A regular expression (abbreviated as regexp or regex, with plural forms regexps, regexes, or regexen) is a string that describes or matches a set of strings, according to certain syntax rules. ... Pattern matching is the act of checking for the presence of the constituents of a given pattern. ... A regular expression (abbreviated as regexp or regex, with plural forms regexps, regexes, or regexen) is a string that describes or matches a set of strings, according to certain syntax rules. ... The PDP-10 was a computer manufactured by Digital Equipment Corporation (DEC) from the late 1960s on; the name stands for Programmed Data Processor model 10. It was the machine that made time-sharing common; it looms large in hacker folklore because of its adoption in the 1970s by many... A diagram of the operation of a typical multi-language compiler. ... In computer science a formal grammar is an abstract structure that describes a formal language precisely, i. ... Hondas intelligent humanoid robot AI redirects here. ... Machine translation, sometimes referred to by the acronym MT, is a sub-field of computational linguistics that investigates the use of computer software to translate text or speech in between natural languages. ... The term natural language is used to distinguish languages spoken and signed (by hand signals and facial expressions) by humans for general-purpose communication from constructs such as writing, computer-programming languages or the languages used in the study of formal logic, especially mathematical logic. ...


SNOBOL was originally called SEXI - String EXpression Interpreter.


The SNOBOL4 (StriNg Oriented symBOlic Language number 4) version is the fourth and final incarnation of such a series of special purpose programming languages for character string manipulation.


The SNOBOL4 variant of the language supports a number of built-in data types, such as integers and limited precision real numbers, strings, patterns, arrays, and tables, and also allows the programmer to define additional data types and new functions. SNOBOL4's programmer-defined data type facility was advanced at the time (it preceded, and resembles, Pascal's "records" and C's "structs."). Data type is a type of data in a type system in computer programming. ... The integers consist of the positive natural numbers (1, 2, 3, …), their negatives (−1, −2, −3, ...) and the number zero. ... In mathematics, the set of real numbers, denoted R, is the set of all rational numbers and irrational numbers. ... In computer programming and some branches of mathematics, strings are sequences of various simple objects. ... Pattern matching is the act of checking for the presence of the constituents of a given pattern. ... In computer programming, an array, also known as a vector or list (for one-dimensional arrays) or a matrix (for two-dimensional arrays), is one of the simplest data structures. ... In computer science, a subroutine (function, procedure, or subprogram) is a sequence of code which performs a specific task, as part of a larger program, and is grouped as one, or more, statement blocks; such code is sometimes collected into software libraries. ... Pascal is an imperative computer programming language, developed in 1970 by Niklaus Wirth as a language particularly suitable for structured programming. ... The C Programming Language, Brian Kernighan and Dennis Ritchie, the original edition that served for many years as an informal specification of the language The C programming language is a low_level standardized programming language developed in the early 1970s by Ken Thompson and Dennis Ritchie for use on the UNIX...


SNOBOL4 stands apart from the mainstream programming languages of that time 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. Strings generated during execution can be treated as programs and executed. In formal language theory (and therefore in programming languages), concatenation is the operation of joining two character strings end to end. ...


A SNOBOL pattern can be very simple or extremely complex. A simple pattern is just a text string (e.g. "ABCD"), but a complex pattern may be a large structure describing, for example, the complete grammar of a computer language.


SNOBOL provides the programmer with a rich assortment of features including some rather exotic ones. As a result it is possible to use SNOBOL as if it were an object-oriented language, a logical programming language, a functional language or a standard imperative language by changing the set of features used to write a program. It also concatenates strings that are simply placed next to each other in a statement. It keeps strings in a memory heap, and frees programmers from concerns about memory allocation and management for strings. In computer science, object-oriented programming is a computer programming paradigm. ... Logic programming is a declarative programming paradigm in which a set of attributes that a solution should have are specified rather than set of steps to obtain such a solution. ... Functional programming is a programming paradigm that conceives computation as the evaluation of mathematical functions and avoids state and mutable data. ...


It is normally implemented as an interpreter because of the difficulty in implementing some of its very high-level features, but there is a compiler, the SPITBOL compiler, which provides nearly all the facilities that the interpreter provides. An interpreter is a computer program that executes other programs. ... A diagram of the operation of a typical multi-language compiler. ... SPITBOL is a compiled implementation of SNOBOL4. ...


The Icon programming language is a descendant of SNOBOL4. Icon is a very high-level programming language featuring goal directed execution and excellent facilities for managing strings and textual patterns. ...

Contents


Hello World

 OUTPUT = 'Hello World!' END 

See also

SPITBOL is a compiled implementation of SNOBOL4. ... Icon is a very high-level programming language featuring goal directed execution and excellent facilities for managing strings and textual patterns. ... Unicon is a programming language descended from Icon that offers better access to the operating system as well as support for object oriented programming. ...

Further reading

  • Griswold, Ralph E., J. F. Poage, and I. P. Polensky. The SNOBOL 4 Programming Language. Englewood Cliffs, NJ: Prentice Hall, 1968 (ISBN 0-13-815373-6).
  • Hockey, Susan M. Snobol Programming for the Humanities. New York: Clarendon Press; Oxford: Oxford University Press, 1985 (ISBN 0-19-824676-5).

External links


  Results from FactBites:
 
SNOBOL - Wikipedia, the free encyclopedia (626 words)
SNOBOL (StriNg Oriented symBOlic Language) is a computer programming language developed between 1962 and 1967 at ATandT Bell Laboratories by David J. Farber, Ralph E. Griswold and Ivan P. Polonsky.
SNOBOL was one of a number of text-string-oriented languages, and one of the more successful; others included COMIT and TRAC.
As a result it is possible to use SNOBOL as if it were an object-oriented language, a logical programming language, a functional language or a standard imperative language by changing the set of features used to write a program.
Math 169 Notes -- SNOBOL (598 words)
SNOBOL and its most recent version, SNOBOL4, were designed to allow easy manipulation of character strings.
SNOBOL was developed at Bell Labs between 1962 and 1964 and SNOBOL4 released in 1967.
SNOBOL introduced the concept of pattern-matching as a fundamental "operation" and included operations and functions specifically geared to string manipulation.
  More results at FactBites »

 

COMMENTARY     


Share your thoughts, questions and commentary here
Your name
Your location
Your comments
Please enter the 5-letter protection code


Lesson Plans | Student Area | Student FAQ | Reviews | Press Releases |  Feeds | Contact
The Wikipedia article included on this page is licensed under the GFDL.
Images may be subject to relevant owners' copyright.
All other elements are (c) copyright NationMaster.com 2003-5. All Rights Reserved.
Usage implies agreement with terms.