For much of this tutorial we've been concerned with the detailed mechanics of pattern matching -- the functions, primitive patterns, and heuristics of applying a pattern to a character string. SNOBOL4 provides so many primitive functions and operations that it's easy to get lost in the forest. Let's step back and consider SNOBOL4's larger significance.
It would be a mistake to think of SNOBOL4 only as a text processing language. For example, programmers in the artificial intelligence field think in terms of lists, and have used the LISP language for some time. As Shafto demonstrates, SNOBOL4 can be made to emulate LISP, and go well beyond it, using pattern matching, backtracking, and associative programming (see file SNOBOL4.DOC for information on Shafto's report on AI SNOBOL4 programming.)
SNOBOL4's pattern matching provides a very powerful and completely general recognition system, in which character strings happen to be the medium of expression. Other recognition problems can be solved by mapping the object to be examined into a subject string, and the recognition criteria into SNOBOL4 patterns.
In the past, use of SNOBOL4 has been hindered by the high cost and inconvenience of running it on mainframe computers. Now it's on your desk top, with computer time essentially free.
What new insights can SNOBOL4 bring to your problems? Can you find other general applications for SNOBOL4's unique abilities?
The future of the language is in your hands.