A theory of discrete patterns and their implementation in SNOBOL4
Communications of the ACM
A model and stack implementation of multiple environments
Communications of the ACM
Micro-Planner Reference Manual
Micro-Planner Reference Manual
Control structures for programming languages
Control structures for programming languages
An implementation of backtracking for programming languages
ACM SIGPLAN Notices - Special issue on control structures in programming languages
The macro implementation of SNOBOL4;: A case study of machine-independent software development
The macro implementation of SNOBOL4;: A case study of machine-independent software development
The SNOBOL4 programming language
The SNOBOL4 programming language
Communications of the ACM
A procedure mechanism for backtrack programming
ACM '76 Proceedings of the 1976 annual conference
String analysis and synthesis in SL5
ACM '76 Proceedings of the 1976 annual conference
Language facilities for programmable backtracking
Proceedings of the 1977 symposium on Artificial intelligence and programming languages
A history of the SNOBOL programming languages
ACM SIGPLAN Notices - Special issue: History of programming languages conference
Extensible pattern matching in SNOBOL4
ACM '75 Proceedings of the 1975 annual conference
Procedure referencing environments in SL5
POPL '76 Proceedings of the 3rd ACM SIGACT-SIGPLAN symposium on Principles on programming languages
ACM SIGPLAN Notices
A history of the SNOBOL programming languages
History of programming languages I
Implementing SNOBOL4 pattern matching in Icon
Computer Languages
Hi-index | 0.02 |
This paper presents a methodology for describing and implementing pattern matching in SNOBOL4. The basic element of the formulation is the coroutine. The coroutine notion permits a complete procedural implementation as well as a concise description of the pattern-matching process. Matching procedures are represented by co-routines whose order of invocation is determined from the tree structure of a given pattern. The context for a coroutine's operation maintains the details of a local matching process. Side effects that may require reversal in the event of backtracking are undone by the coroutine that caused the effect. The system described has been used to implement extensions to the existing pattern-matching facilities of SNOBOL4.