Permalink
Browse files

Added code listings for categorical presentation of monad and witness…

…es for List and Set.
  • Loading branch information...
1 parent 7f3036d commit e8e2673bbf1fd6fb2a006fe38c380bf2a8233f70 Meredith Gregory committed Mar 15, 2010
@@ -1,6 +1,6 @@
\relax
\@setckpt{bibliography/monadic}{
-\setcounter{page}{94}
+\setcounter{page}{98}
\setcounter{equation}{0}
\setcounter{enumi}{0}
\setcounter{enumii}{0}
@@ -1,22 +1,22 @@
\relax
-\@writefile{toc}{\contentsline {chapter}{\numberline {8}Domain model, storage and state}{79}{chapter.8}}
+\@writefile{toc}{\contentsline {chapter}{\numberline {8}Domain model, storage and state}{83}{chapter.8}}
\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\addvspace {10\p@ }}
-\@writefile{toc}{\contentsline {section}{\numberline {8.1}Mapping our domain model to storage}{79}{section.8.1}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {8.1.1}Functional and relational models}{79}{subsection.8.1.1}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {8.1.2}Functional and XML models}{79}{subsection.8.1.2}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {8.1.3}ORM}{79}{subsection.8.1.3}}
-\@writefile{toc}{\contentsline {section}{\numberline {8.2}Storage and language-integrated query}{79}{section.8.2}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {8.2.1}LINQ and \lstinline [language=Scala]!for!-comprehensions}{79}{subsection.8.2.1}}
-\@writefile{toc}{\contentsline {subsubsection}{Open source implementations}{79}{section*.53}}
-\@writefile{toc}{\contentsline {paragraph}{ScalaQuery}{79}{section*.54}}
-\@writefile{toc}{\contentsline {paragraph}{Squeryl}{79}{section*.55}}
-\@writefile{lof}{\contentsline {figure}{\numberline {8.1}{\ignorespaces Chapter map }}{80}{figure.8.1}}
-\@writefile{toc}{\contentsline {section}{\numberline {8.3}Continuations revisited}{80}{section.8.3}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {8.3.1}Stored state}{80}{subsection.8.3.1}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {8.3.2}Transactions}{80}{subsection.8.3.2}}
+\@writefile{toc}{\contentsline {section}{\numberline {8.1}Mapping our domain model to storage}{83}{section.8.1}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {8.1.1}Functional and relational models}{83}{subsection.8.1.1}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {8.1.2}Functional and XML models}{83}{subsection.8.1.2}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {8.1.3}ORM}{83}{subsection.8.1.3}}
+\@writefile{toc}{\contentsline {section}{\numberline {8.2}Storage and language-integrated query}{83}{section.8.2}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {8.2.1}LINQ and \lstinline [language=Scala]!for!-comprehensions}{83}{subsection.8.2.1}}
+\@writefile{toc}{\contentsline {subsubsection}{Open source implementations}{83}{section*.56}}
+\@writefile{toc}{\contentsline {paragraph}{ScalaQuery}{83}{section*.57}}
+\@writefile{toc}{\contentsline {paragraph}{Squeryl}{83}{section*.58}}
+\@writefile{lof}{\contentsline {figure}{\numberline {8.1}{\ignorespaces Chapter map }}{84}{figure.8.1}}
+\@writefile{toc}{\contentsline {section}{\numberline {8.3}Continuations revisited}{84}{section.8.3}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {8.3.1}Stored state}{84}{subsection.8.3.1}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {8.3.2}Transactions}{84}{subsection.8.3.2}}
\@setckpt{chapters/eight/ch}{
-\setcounter{page}{81}
+\setcounter{page}{85}
\setcounter{equation}{0}
\setcounter{enumi}{0}
\setcounter{enumii}{0}
@@ -1,38 +1,38 @@
\relax
-\@writefile{toc}{\contentsline {chapter}{\numberline {5}The domain model as abstract syntax}{49}{chapter.5}}
+\@writefile{toc}{\contentsline {chapter}{\numberline {5}The domain model as abstract syntax}{51}{chapter.5}}
\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\addvspace {10\p@ }}
-\@writefile{toc}{\contentsline {section}{\numberline {5.1}Our abstract syntax}{49}{section.5.1}}
-\@writefile{toc}{\contentsline {paragraph}{Abstract syntax}{49}{section*.29}}
-\@writefile{lof}{\contentsline {figure}{\numberline {5.1}{\ignorespaces Chapter map }}{50}{figure.5.1}}
-\@writefile{toc}{\contentsline {section}{\numberline {5.2}Our application domain model}{50}{section.5.2}}
-\@writefile{toc}{\contentsline {subsubsection}{Our toy language}{50}{section*.30}}
-\@writefile{toc}{\contentsline {paragraph}{A simple-minded representation}{50}{section*.31}}
-\@writefile{toc}{\contentsline {paragraph}{Currying}{51}{section*.32}}
-\@writefile{toc}{\contentsline {paragraph}{Type parametrization and quotation}{52}{section*.33}}
-\@writefile{toc}{\contentsline {paragraph}{Some syntactic sugar}{53}{section*.34}}
-\@writefile{toc}{\contentsline {paragraph}{Digression: complexity management principle}{53}{section*.35}}
-\@writefile{toc}{\contentsline {paragraph}{Concrete syntax}{53}{section*.36}}
-\@writefile{toc}{\contentsline {paragraph}{Translating concrete syntax to abstract syntax}{54}{section*.37}}
-\@writefile{lol}{\contentsline {lstlisting}{\numberline {5.1}translating concrete to abstract syntax}{54}{lstlisting.5.1}}
-\@writefile{toc}{\contentsline {paragraph}{Structural equivalence and Relations or What makes abstract syntax abstract}{57}{section*.38}}
-\@writefile{toc}{\contentsline {paragraph}{Digression: the internal structure of the type of variables}{61}{section*.39}}
-\@writefile{toc}{\contentsline {paragraph}{Evaluation -- aka operational semantics}{62}{section*.40}}
-\@writefile{toc}{\contentsline {paragraph}{Ordinary maps}{62}{section*.41}}
-\@writefile{toc}{\contentsline {paragraph}{DeBruijn notation}{62}{section*.42}}
-\@writefile{toc}{\contentsline {subsubsection}{The \texttt {Scala} implementation}{62}{section*.43}}
-\@writefile{toc}{\contentsline {subsubsection}{What goes into a language definition}{64}{section*.44}}
-\@writefile{toc}{\contentsline {paragraph}{Syntax}{65}{section*.45}}
-\@writefile{toc}{\contentsline {paragraph}{Structural equivalence}{65}{section*.46}}
-\@writefile{toc}{\contentsline {paragraph}{Operational semantics}{65}{section*.47}}
-\@writefile{toc}{\contentsline {paragraph}{Discussion}{65}{section*.48}}
-\@writefile{toc}{\contentsline {section}{\numberline {5.3}The project model}{66}{section.5.3}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.1}Abstract syntax}{66}{subsection.5.3.1}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.2}Concrete syntax -- and presentation layer}{66}{subsection.5.3.2}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.3}Domain model}{66}{subsection.5.3.3}}
-\@writefile{toc}{\contentsline {section}{\numberline {5.4}A transform pipeline}{66}{section.5.4}}
+\@writefile{toc}{\contentsline {section}{\numberline {5.1}Our abstract syntax}{51}{section.5.1}}
+\@writefile{toc}{\contentsline {paragraph}{Abstract syntax}{51}{section*.29}}
+\@writefile{lof}{\contentsline {figure}{\numberline {5.1}{\ignorespaces Chapter map }}{52}{figure.5.1}}
+\@writefile{toc}{\contentsline {section}{\numberline {5.2}Our application domain model}{52}{section.5.2}}
+\@writefile{toc}{\contentsline {subsubsection}{Our toy language}{52}{section*.30}}
+\@writefile{toc}{\contentsline {paragraph}{A simple-minded representation}{52}{section*.31}}
+\@writefile{toc}{\contentsline {paragraph}{Currying}{53}{section*.32}}
+\@writefile{toc}{\contentsline {paragraph}{Type parametrization and quotation}{54}{section*.33}}
+\@writefile{toc}{\contentsline {paragraph}{Some syntactic sugar}{55}{section*.34}}
+\@writefile{toc}{\contentsline {paragraph}{Digression: complexity management principle}{55}{section*.35}}
+\@writefile{toc}{\contentsline {paragraph}{Concrete syntax}{55}{section*.36}}
+\@writefile{toc}{\contentsline {paragraph}{Translating concrete syntax to abstract syntax}{56}{section*.37}}
+\@writefile{lol}{\contentsline {lstlisting}{\numberline {5.1}translating concrete to abstract syntax}{56}{lstlisting.5.1}}
+\@writefile{toc}{\contentsline {paragraph}{Structural equivalence and Relations or What makes abstract syntax abstract}{59}{section*.38}}
+\@writefile{toc}{\contentsline {paragraph}{Digression: the internal structure of the type of variables}{63}{section*.39}}
+\@writefile{toc}{\contentsline {paragraph}{Evaluation -- aka operational semantics}{64}{section*.40}}
+\@writefile{toc}{\contentsline {paragraph}{Ordinary maps}{64}{section*.41}}
+\@writefile{toc}{\contentsline {paragraph}{DeBruijn notation}{64}{section*.42}}
+\@writefile{toc}{\contentsline {subsubsection}{The \texttt {Scala} implementation}{64}{section*.43}}
+\@writefile{toc}{\contentsline {subsubsection}{What goes into a language definition}{66}{section*.44}}
+\@writefile{toc}{\contentsline {paragraph}{Syntax}{67}{section*.45}}
+\@writefile{toc}{\contentsline {paragraph}{Structural equivalence}{67}{section*.46}}
+\@writefile{toc}{\contentsline {paragraph}{Operational semantics}{67}{section*.47}}
+\@writefile{toc}{\contentsline {paragraph}{Discussion}{67}{section*.48}}
+\@writefile{toc}{\contentsline {section}{\numberline {5.3}The project model}{68}{section.5.3}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.1}Abstract syntax}{68}{subsection.5.3.1}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.2}Concrete syntax -- and presentation layer}{68}{subsection.5.3.2}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.3}Domain model}{68}{subsection.5.3.3}}
+\@writefile{toc}{\contentsline {section}{\numberline {5.4}A transform pipeline}{68}{section.5.4}}
\@setckpt{chapters/five/ch}{
-\setcounter{page}{67}
+\setcounter{page}{69}
\setcounter{equation}{0}
\setcounter{enumi}{0}
\setcounter{enumii}{0}
@@ -1,16 +1,16 @@
\relax
-\@writefile{toc}{\contentsline {chapter}{\numberline {4}Parsing requests, monadically}{45}{chapter.4}}
+\@writefile{toc}{\contentsline {chapter}{\numberline {4}Parsing requests, monadically}{47}{chapter.4}}
\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\addvspace {10\p@ }}
-\@writefile{toc}{\contentsline {section}{\numberline {4.1}Obligatory parsing monad}{45}{section.4.1}}
-\@writefile{toc}{\contentsline {section}{\numberline {4.2}Your parser combinators are showing}{45}{section.4.2}}
-\@writefile{toc}{\contentsline {section}{\numberline {4.3}EBNF and why higher levels of abstraction are better}{45}{section.4.3}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {4.3.1}Different platforms, different parsers}{45}{subsection.4.3.1}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {4.3.2}Different performance constraints, different parsers}{45}{subsection.4.3.2}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {4.3.3}Maintainability}{45}{subsection.4.3.3}}
-\@writefile{lof}{\contentsline {figure}{\numberline {4.1}{\ignorespaces Chapter map }}{46}{figure.4.1}}
+\@writefile{toc}{\contentsline {section}{\numberline {4.1}Obligatory parsing monad}{47}{section.4.1}}
+\@writefile{toc}{\contentsline {section}{\numberline {4.2}Your parser combinators are showing}{47}{section.4.2}}
+\@writefile{toc}{\contentsline {section}{\numberline {4.3}EBNF and why higher levels of abstraction are better}{47}{section.4.3}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {4.3.1}Different platforms, different parsers}{47}{subsection.4.3.1}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {4.3.2}Different performance constraints, different parsers}{47}{subsection.4.3.2}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {4.3.3}Maintainability}{47}{subsection.4.3.3}}
+\@writefile{lof}{\contentsline {figure}{\numberline {4.1}{\ignorespaces Chapter map }}{48}{figure.4.1}}
\@setckpt{chapters/four/ch}{
-\setcounter{page}{48}
+\setcounter{page}{50}
\setcounter{equation}{0}
\setcounter{enumi}{0}
\setcounter{enumii}{0}
@@ -1,14 +1,14 @@
\relax
-\@writefile{toc}{\contentsline {chapter}{\numberline {9}Putting it all together}{81}{chapter.9}}
+\@writefile{toc}{\contentsline {chapter}{\numberline {9}Putting it all together}{85}{chapter.9}}
\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\addvspace {10\p@ }}
-\@writefile{toc}{\contentsline {section}{\numberline {9.1}Our web application end-to-end}{81}{section.9.1}}
-\@writefile{toc}{\contentsline {section}{\numberline {9.2}Deploying our application}{81}{section.9.2}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {9.2.1}Why we are not deploying on GAE}{81}{subsection.9.2.1}}
-\@writefile{toc}{\contentsline {section}{\numberline {9.3}From one web application to web framework}{81}{section.9.3}}
-\@writefile{lof}{\contentsline {figure}{\numberline {9.1}{\ignorespaces Chapter map }}{82}{figure.9.1}}
+\@writefile{toc}{\contentsline {section}{\numberline {9.1}Our web application end-to-end}{85}{section.9.1}}
+\@writefile{toc}{\contentsline {section}{\numberline {9.2}Deploying our application}{85}{section.9.2}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {9.2.1}Why we are not deploying on GAE}{85}{subsection.9.2.1}}
+\@writefile{toc}{\contentsline {section}{\numberline {9.3}From one web application to web framework}{85}{section.9.3}}
+\@writefile{lof}{\contentsline {figure}{\numberline {9.1}{\ignorespaces Chapter map }}{86}{figure.9.1}}
\@setckpt{chapters/nine/ch}{
-\setcounter{page}{83}
+\setcounter{page}{87}
\setcounter{equation}{0}
\setcounter{enumi}{0}
\setcounter{enumii}{0}
@@ -1,32 +1,34 @@
\relax
-\@writefile{toc}{\contentsline {chapter}{\numberline {7}A review of collections as monads}{75}{chapter.7}}
+\@writefile{toc}{\contentsline {chapter}{\numberline {7}A review of collections as monads}{77}{chapter.7}}
\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\addvspace {10\p@ }}
-\@writefile{lof}{\contentsline {figure}{\numberline {7.1}{\ignorespaces Chapter map }}{76}{figure.7.1}}
\@writefile{toc}{\contentsline {section}{\numberline {7.1}Sets, Lists and Languages}{77}{section.7.1}}
\@writefile{toc}{\contentsline {subsection}{\numberline {7.1.1}Witnessing Sets and Lists monadicity}{77}{subsection.7.1.1}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {7.1.2}Languages and Sets of Words}{77}{subsection.7.1.2}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {7.1.3}Of lenses and bananas}{77}{subsection.7.1.3}}
-\@writefile{toc}{\contentsline {section}{\numberline {7.2}Containers and syntax}{77}{section.7.2}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {7.2.1}The algebra of Sets}{77}{subsection.7.2.1}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {7.2.2}The algebra of Lists}{77}{subsection.7.2.2}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {7.2.3}The algebra of Sets of Words}{77}{subsection.7.2.3}}
-\@writefile{toc}{\contentsline {section}{\numberline {7.3}Algebras}{77}{section.7.3}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {7.3.1}Kleisli}{77}{subsection.7.3.1}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {7.3.2}Eilenberg-Moore}{77}{subsection.7.3.2}}
-\@writefile{toc}{\contentsline {section}{\numberline {7.4}Monad as container}{77}{section.7.4}}
-\@writefile{toc}{\contentsline {section}{\numberline {7.5}Monads and take-out}{78}{section.7.5}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {7.5.1}Option as container}{78}{subsection.7.5.1}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {7.5.2}I/O monad for contrast}{78}{subsection.7.5.2}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {7.5.3}Matching gazintas and gazoutas}{78}{subsection.7.5.3}}
-\@writefile{toc}{\contentsline {subsubsection}{Intuitionistic discipline}{78}{section*.51}}
-\@writefile{toc}{\contentsline {subsubsection}{Linear discipline}{78}{section*.52}}
-\@writefile{toc}{\contentsline {section}{\numberline {7.6}Co-monad and take-out}{78}{section.7.6}}
-\@writefile{toc}{\contentsline {section}{\numberline {7.7}Hopf structure}{78}{section.7.7}}
-\@writefile{toc}{\contentsline {section}{\numberline {7.8}Container and control}{78}{section.7.8}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {7.8.1}Delimited continuations reconsidered}{78}{subsection.7.8.1}}
+\@writefile{lof}{\contentsline {figure}{\numberline {7.1}{\ignorespaces Chapter map }}{78}{figure.7.1}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {7.1.2}Languages and Sets of Words}{79}{subsection.7.1.2}}
+\@writefile{toc}{\contentsline {subsubsection}{Kleene star}{79}{section*.51}}
+\@writefile{toc}{\contentsline {subsubsection}{I am not a number, I am a free monoid}{79}{section*.52}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {7.1.3}Of lenses and bananas}{79}{subsection.7.1.3}}
+\@writefile{toc}{\contentsline {section}{\numberline {7.2}Containers and syntax}{79}{section.7.2}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {7.2.1}The algebra of Sets}{79}{subsection.7.2.1}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {7.2.2}The algebra of Lists}{79}{subsection.7.2.2}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {7.2.3}The algebra of Sets of Words}{80}{subsection.7.2.3}}
+\@writefile{toc}{\contentsline {section}{\numberline {7.3}Algebras}{80}{section.7.3}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {7.3.1}Kleisli}{80}{subsection.7.3.1}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {7.3.2}Eilenberg-Moore}{80}{subsection.7.3.2}}
+\@writefile{toc}{\contentsline {section}{\numberline {7.4}Monad as container}{80}{section.7.4}}
+\@writefile{toc}{\contentsline {section}{\numberline {7.5}Monads and take-out}{80}{section.7.5}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {7.5.1}Option as container}{80}{subsection.7.5.1}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {7.5.2}I/O monad for contrast}{80}{subsection.7.5.2}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {7.5.3}Matching gazintas and gazoutas}{80}{subsection.7.5.3}}
+\@writefile{toc}{\contentsline {subsubsection}{Intuitionistic discipline}{80}{section*.54}}
+\@writefile{toc}{\contentsline {subsubsection}{Linear discipline}{80}{section*.55}}
+\@writefile{toc}{\contentsline {section}{\numberline {7.6}Co-monad and take-out}{80}{section.7.6}}
+\@writefile{toc}{\contentsline {section}{\numberline {7.7}Hopf structure}{81}{section.7.7}}
+\@writefile{toc}{\contentsline {section}{\numberline {7.8}Container and control}{81}{section.7.8}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {7.8.1}Delimited continuations reconsidered}{81}{subsection.7.8.1}}
\@setckpt{chapters/seven/ch}{
-\setcounter{page}{79}
+\setcounter{page}{82}
\setcounter{equation}{0}
\setcounter{enumi}{0}
\setcounter{enumii}{0}
@@ -46,7 +48,7 @@
\setcounter{parentequation}{0}
\setcounter{Item}{0}
\setcounter{Hfootnote}{10}
-\setcounter{lstnumber}{133}
+\setcounter{lstnumber}{14}
\setcounter{theorem}{0}
\setcounter{section@level}{2}
\setcounter{lstlisting}{0}
Oops, something went wrong.

0 comments on commit e8e2673

Please sign in to comment.