--- a/handouts/ho01.tex Sat Jan 07 14:56:45 2017 +0000
+++ b/handouts/ho01.tex Sat Jan 21 00:25:09 2017 +0000
@@ -50,9 +50,11 @@
want to know whether it matches a particular pattern---be it an email
address, for example. In this way we can exclude user input that would
otherwise have nasty effects on our program (crashing it or making it
-go into an infinite loop, if not worse). The point is that the fast
+go into an infinite loop, if not worse). Scanning for computer viruses
+or filtering out spam usually involves scanning for some signature
+(essentially a pattern). The point is that the fast
Knuth-Morris-Pratt algorithm for strings is not good enough for such
-string patterns.\smallskip
+string \emph{patterns}.\smallskip
\defn{Regular expressions} help with conveniently specifying
such patterns. The idea behind regular expressions is that
@@ -682,7 +684,16 @@
addresses. Still it is good to know that some tasks in text
processing just cannot be achieved by using regular
expressions. But for what we want to use them (lexing) they are
-pretty good.
+pretty good.\medskip
+
+\noindent
+Finally there is a joke about regular expressions:
+
+\begin{quote}\it
+ ``Sometimes you have a programming problem and it seems like the
+ best solution is to use regular expressions; now you have two
+ problems.''
+\end{quote}
\begin{figure}[p]