269 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
269 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
270 \begin{frame}[c] |
270 \begin{frame}[c] |
271 \frametitle{Records} |
271 \frametitle{Records} |
272 |
272 |
273 \begin{itemize} |
273 \begin{itemize} |
274 \item new regex: \bl{$(x:r)$}\hspace{7mm}new value: |
274 \item new regex: \bl{$(x:r)$}\hspace{7mm}new value: \bl{$Rec(x,v)$}\medskip\pause |
275 \bl{$Rec(x,v)$}\medskip |
|
276 |
275 |
277 \item \bl{$nullable(x:r) \dn nullable(r)$} |
276 \item \bl{$nullable(x:r) \dn nullable(r)$} |
278 \item \bl{$der\,c\,(x:r) \dn der\,c\,r$} |
277 \item \bl{$der\,c\,(x:r) \dn (x:der\,c\,r)$} |
279 \item \bl{$mkeps(x:r) \dn Rec(x, mkeps(r))$} |
278 \item \bl{$mkeps(x:r) \dn Rec(x, mkeps(r))$} |
280 \item \bl{$inj\,(x:r)\,c\,v \dn Rec(x, inj\,r\,c\,v)$} |
279 \item \bl{$inj\,(x:r)\,c\,Rec(x, v) \dn Rec(x, inj\,r\,c\,v)$} |
281 \end{itemize}\bigskip\bigskip |
280 \end{itemize}\bigskip\bigskip\pause |
282 |
281 |
283 \small |
282 \small |
284 for extracting subpatterns \bl{$(z: ((x:ab) + (y:ba))$} |
283 for extracting subpatterns \bl{$(z: ((x:ab) + (y:ba))$} |
285 |
284 |
286 \end{frame} |
285 \end{frame} |
287 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
286 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
287 |
288 |
288 |
289 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
289 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
290 \begin{frame}[c] |
290 \begin{frame}[c] |
291 \frametitle{Environments} |
291 \frametitle{Environments} |
292 |
292 |