PatternForth: A Pattern-Matching Language for Real-Time Control
My 1989 M.S. dissertation at Bradley University.
Full text of dissertation.
-
A. Introduction (7K)
-
The Problem(s)
-
Perceived Requirements
-
Previous Languages
-
B. Project Scope (8K)
-
Essential Features
-
Optional Features
-
C. Dynamic Memory Management (19K, 15K linked
images)
-
Design
-
The Boundary Tag Representation
-
Allocating Memory
-
Memory Release
-
Future work
-
D. Associative String Access (39K, 26K linked
images)
-
Design
-
The hash table
-
Multiple hash tables
-
Creating strings
-
Destroying strings
-
The associated data field
-
Garbage collection
-
Future work
-
E. Pattern Matching (44K, 64K linked images)
-
Traditional
-
Executable patterns
-
Element representation
-
Concatenation of successors
-
Alternation
-
Grouping: Mixing concatenation and alternation
-
Backtracking
-
The History context
-
Subpatterns
-
Deferred evaluation
-
Recursion in patterns
-
The Top Level pattern
-
Implications for Coroutines
-
Future work
-
F. Pattern and String Operations (14K)
-
Basic string operators
-
Derived string operators
-
String variables
-
Basic pattern operators
-
Derived pattern operators
-
Capturing match results
-
String replacement
-
Pattern variables
-
Run-time compilation
-
Future work
-
G. Conclusions (1K)
-
H. References (6K)
-
I. Figures (2K, 105K linked images)
-
Appendix A. PatternForth Glossary (21K)
-
Appendix B. The Program Listing (61K)