Regular expressions--and their underlying finite-state
automata--are useful in many different applications, and are central
to text processing languages and tools such as emacs
and
grep
.
Regular expression pattern matching has a simple and elegant implementation in SML using continuations (with return type bool).