equal
  deleted
  inserted
  replaced
  
    
    
    11   2014, 2015, 2016, 2017, 2018, 2019, 2020}  | 
    11   2014, 2015, 2016, 2017, 2018, 2019, 2020}  | 
    12   | 
    12   | 
    13   | 
    13   | 
    14 \section*{Handout 2 (Regular Expression Matching)} | 
    14 \section*{Handout 2 (Regular Expression Matching)} | 
    15   | 
    15   | 
    16 \noindent  | 
    16 %\noindent  | 
    17 {\bf Checklist} | 
    17 %{\bf Checklist} | 
    18   | 
    18 %  | 
    19 \begin{itemize} | 
    19 %\begin{itemize} | 
    20   \item You have understood the derivative-based matching algorithm.  | 
    20 %  \item You have understood the derivative-based matching algorithm.  | 
    21   \item You know how the derivative is related to the meaning of regular  | 
    21 %  \item You know how the derivative is related to the meaning of regular  | 
    22   expressions.  | 
    22 %  expressions.  | 
    23   \item You can extend the algorithm to non-basic regular expressions.  | 
    23 %  \item You can extend the algorithm to non-basic regular expressions.  | 
    24 \end{itemize}\bigskip\bigskip\bigskip | 
    24 %\end{itemize}\bigskip\bigskip\bigskip | 
    25   | 
    25   | 
    26 \noindent  | 
    26 \noindent  | 
    27 This lecture is about implementing a more efficient regular expression  | 
    27 This lecture is about implementing a more efficient regular expression  | 
    28 matcher (the plots on the right below)---more efficient than the  | 
    28 matcher (the plots on the right below)---more efficient than the  | 
    29 matchers from regular expression libraries in Ruby, Python, JavaScript  | 
    29 matchers from regular expression libraries in Ruby, Python, JavaScript  |