$if(legacy-header)$ $legacy-header$ $else$ $if(sigplanconf)$ \documentclass[authoryear,preprint]{sigplanconf} \usepackage{mathptmx} \bibpunct{(}{)}{;}{a}{}{,} $else$ \documentclass{scrartcl} \usepackage[authoryear]{natbib} \bibpunct{(}{)}{;}{a}{}{,} $endif$ %include polycode.fmt \usepackage{amsmath,amssymb} $if(xetex)$ \usepackage{ifxetex} \ifxetex \usepackage{fontspec,xltxtra,xunicode} \defaultfontfeatures{Mapping=tex-text,Scale=MatchLowercase} \else \usepackage[mathletters]{ucs} \usepackage[utf8x]{inputenc} \fi $else$ \usepackage[mathletters]{ucs} \usepackage[utf8x]{inputenc} $endif$ \usepackage[geometry]{ifsym} $if(lhs)$ % magic \def\clap#1{\hbox to0pt{\hss#1\hss}} %\def\hsmash{\mathpalette\dohsmash} %\def\dohsmash#1#2{\clap{$$\mathsurround=0pt#1{#2}$$}} \def\arrow#1#2{\clap{#1}\clap{-}-\clap{-}\clap{#2}} \def\Arrow#1#2{\clap{#1}\clap{=}\kern 0.1em=\kern -0.1em\clap{#2}} \def\arrow#1#2#3#4#5#6#7#8#9{% \rlap{#2}% \rlap{\hspace{0.15em}#3}% \rlap{\hspace{0.22em}#4}% #1% #5% \rlap{\hspace{-0.22em}#6}% \rlap{\hspace{-0.15em}#7}% \rlap{#8}% #9} % listings % \usepackage{inconsolata} % \usepackage{listings} % \lstloadlanguages{Haskell} % \lstnewenvironment{code} % {\lstset{}% % \csname lst@SetFirstLabel\endcsname} % {\csname lst@SaveFirstLabel\endcsname} % \lstset{ % basicstyle=\small\it, %\ttfamily, % language=Haskell, % keywordstyle=\bf, % % keywordstyle={[1]\color{blue}}, % sensitive=true, % % flexiblecolumns=true, % xleftmargin=3em, % % columns=[l]space-flexible, % basewidth={0.5em,0.45em}, % breaklines=true, % keywords={module, where, import, hiding, data, instance, class, infix, do, % let, in, type, newtype, case, of, if, then, else, as, qualified}, % morecomment=[is]{\{-hide-\}}{\{-show-\}}, % literate={=}{{$$=$$}}1 % {=\ }{{$$=$$\ }}2 % {++}{{$$+\!+$$}}2 % {++\ }{{$$+\!+$$\ }}3 % {\\}{{$$\lambda$$}}1 % {\\\\}{{\char`\\\char`\\}}1 % {->}{{$$\rightarrow$$}}2 % {->\ }{{$$\rightarrow$$\ }}3 % {>=}{{$$\geq$$}}2 % {>=\ }{{$$\geq$$\ }}3 % {<-}{{$$\leftarrow$$}}2 % {<-\ }{{$$\leftarrow$$\ }}3 % {<=}{{$$\leq$$}}2 % {<=\ }{{$$\leq$$\ }}3 % {=>}{{$$\Rightarrow$$}}2 % {=>\ }{{$$\Rightarrow$$\ }}3 % {>>}{{$$>\!>$$}}2 % {>>\ }{{$$>\!>$$\ }}3 % {>>=}{{$$>\!>\!=$$}}3 % {>>=\ }{{$$>\!>\!=$$\ }}4 % {==}{{$$=$$}}1 % {==\ }{{$$=$$\ }}2 % {>=>\ }{{$$>=>$$}}3 % {>=>\ }{{$$>=>$$\ }}4 % {<=<\ }{{$$>=>$$}}3 % {<=<\ }{{$$>=>$$\ }}4 % {.}{{$$\circ$$}}1 % {\ .}{{\ $$\circ$$}}1 % {\ .\ }{{\ $$\circ$$\ }}2 % {[}{{$$\mathopen[$$}}1 % {]}{{$$\,\mathclose]$$}}1 % {])}{{$$\,\mathclose])$$}}2 % {]))}{{$$\,\mathclose]))$$}}3 % {)}{{$$)$$}}1 % {(}{{$$($$}}1 % {|}{{$$\mid$$}}1 % {(.)}{{$$(\circ)$$}}3 % {(,)}{{$$(,)$$}}3 % {a)}{{a$$)$$}}2 % {a))}{{a$$))$$}}3 % {b)}{{b$$)$$}}2 % {b))}{{b$$))$$}}3 % {c)}{{c$$)$$}}2 % {c))}{{c$$))$$}}3 % {d)}{{d$$)$$}}2 % {d))}{{d$$))$$}}3 % {f)}{{f\/$$)$$}}2 % {f))}{{\/f$$))$$}}3 % {g)}{{g$$)$$}}2 % {g))}{{g$$))$$}}3 % {p)}{{p$$)$$}}2 % {p))}{{p$$))$$}}3 % {y)}{{y$$)$$}}2 % {y))}{{y$$))$$}}3 % {s)}{{s$$)$$}}2 % {s))}{{s$$))$$}}3 % {s')}{{s'$$)$$}}2 % {s'))}{{s'$$))$$}}3 % {s'')}{{s''$$)$$}}2 % {s''))}{{s''$$))$$}}3 % {Bool)}{{Bool$$)$$}}5 % {Bool))}{{Bool$$))$$}}6 % {arg)}{{arg$$)$$}}4 % {arg))}{{arg$$))$$}}5 % {'Just)}{{'Just$$)$$}}5 % {'Just))}{{'Just$$))$$}}6 % {Nothing)}{{Nothing$$)$$}}8 % {Nothing))}{{Nothing$$))$$}}9 % {alpha}{{$$\alpha$$}}1 % {alpha\ }{{$$\alpha$$\ }}2 % {alpha)}{{$$\alpha)$$}}2 % {alpha))}{{$$\alpha))$$}}3 % {beta}{{$$\beta$$}}1 % {beta\ }{{$$\beta$$\ }}2 % {beta)}{{$$\beta)$$}}2 % {beta))}{{$$\beta))$$}}3 % {gamma}{{$$\gamma$$}}1 % {gamma\ }{{$$\gamma$$\ }}2 % {gamma)}{{$$\gamma)$$}}2 % {gamma))}{{$$\gamma))$$}}3 % {delta}{{$$\delta$$}}1 % {delta\ }{{$$\delta$$\ }}2 % {delta)}{{$$\delta)$$}}2 % {delta))}{{$$\delta))$$}}3 % %{epsilon}{{$$\epsilon$$}}1 % %{zeta}{{$$\zeta$$}}1 % %{eta}{{$$\eta$$}}1 % %{theta}{{$$\theta$$}}1 % %{iota}{{$$\theta$$}}1 % %{kappa}{{$$\theta$$}}1 % %{lambda}{{$$\lambda$$}}1 % %{mu}{{$$\mu$$}}1 % %{nu}{{$$\nu$$}}1 % %{xi}{{$$\xi$$}}1 % %{omicron}{{$$\omicron$$}}1 % %{pi}{{$$\pi$$}}1 % %{rho}{{$$\rho$$}}1 % %{sigma}{{$$\sigma$$}}1 % %{tau}{{$$\tau$$}}1 % %{upsilon}{{$$\upsilon$$}}1 % %{phi}{{$$\phi$$}}1 % %{chi}{{$$\chi$$}}1 % %{psi}{{$$\psi$$}}1 % %{omega}{{$$\omega$$}}1 % {s)]}{{$$s)\mathclose]$$}}3 % {s)])}{{$$s)\mathclose])$$}}4 % {<>}{{$$\Diamond$$}}2 % {<>\ }{{$$\Diamond$$\ }}3 % {<+>}{{\diamond{$$+$$}}}3 % {<+>\ }{{\diamond{$$+$$}\ }}4 % {<->}{{\diamond{$$-$$}}}3 % {<->\ }{{\diamond{$$-$$}\ }}4 % {<|>}{{\diamond{$$|$$}}}3 % {<|>\ }{{\diamond{$$|$$}\ }}4 % {<$$>}{{\diamond[0ex]{\rm\$$}}}3 % {<$$>\ }{{\diamond[0ex]{\rm\$$}\ }}4 % {<*>}{{\diamond{$$\ast$$}}}3 % {<*>\ }{{\diamond{$$\ast$$}\ }}4 % {$$}{{\rm\$$}}1 % {$$\ }{{\rm\$$\ }}2 % {::\ }{{$$::$$\ }}2 % {[|}{{$$\mathopen{[\!\!\!\:[}$$}}2 % {|]}{{$$\mathclose{]\!\!\!\:]}$$}}2 % {()}{{$$\mathop{()}$$}}2 % {())}{{$$\mathop{())}$$}}2 % {\ ..\ }{{\ $$..$$\ }}4 % {...}{{$$\ldots$$}}3 % {pn))).}{{pn$$)))$$.}}6 % {$$(...)}{{\$$$$(\ldots)$$}}6 % } $endif$ % \setlength{\parindent}{0pt} % \setlength{\parskip}{6pt plus 2pt minus 1pt} $endif$ $if(verbatim-in-note)$ \usepackage{fancyvrb} $endif$ $if(fancy-enums)$ \usepackage{enumerate} $endif$ $if(tables)$ \usepackage{array} % This is needed because raggedright in table elements redefines \\: \newcommand{\PreserveBackslash}[1]{\let\temp=\\#1\let\\=\temp} \let\PBS=\PreserveBackslash $endif$ $if(strikeout)$ \usepackage[normalem]{ulem} $endif$ $if(subscript)$ \newcommand{\textsubscr}[1]{\ensuremath{_{\scriptsize\textrm{#1}}}} $endif$ $if(links)$ \usepackage[breaklinks=true]{hyperref} $endif$ $if(url)$ \usepackage{url} $endif$ $if(graphics)$ \usepackage{graphicx} $endif$ $if(numbersections)$ $else$ %\setcounter{secnumdepth}{0} $endif$ $if(verbatim-in-note)$ \VerbatimFootnotes % allows verbatim text in footnotes $endif$ $for(header-includes)$ $header-includes$ $endfor$ $if(lhs)$ % \let\verb\lstinline % \let\verbatim\undefined % \lstnewenvironment{verbatim}{}{} $endif$ $if(title)$ \title{$title$} $endif$ $if(sigplanconf)$ $for(author)$ \authorinfo{$author$}{University of Marburg, Germany}{} $endfor$ $else$ \author{$for(author)$$author$$sep$\\$endfor$} $endif$ $if(date)$ \date{$date$} $endif$ $if(abstract)$ % \let\oldsection=\section % % \def\sectionA#1{% % \def\a{#1}% % \def\b{Abstract}% % \ifx\a\b% % \let\section=\sectionB % \begin{abstract}% % \else% % \oldsection{#1}% % \fi% % } $if(sigplanconf)$ % \def\sectionB{ % \let\section=\sectionC % \oldsection % } $endif$ $if(sigplanconf)$ % \def\sectionC{ $else$ % \def\sectionB{ $endif$ % \end{abstract} % \let\section=\oldsection % \oldsection } % \let\section=\sectionA $endif$ \begin{document} $if(title)$ \maketitle $endif$ $if(toc)$ \tableofcontents $endif$ $body$ \end{document}