1\PassOptionsToPackage{unicode=true}{hyperref} % options for packages loaded elsewhere
2\PassOptionsToPackage{hyphens}{url}
7\usepackage{amssymb,amsmath}
8\usepackage{ifxetex,ifluatex}
9\ifnum 0\ifxetex 1\fi\ifluatex 1\fi=0 % if pdftex
10 \usepackage[T1]{fontenc}
11 \usepackage[utf8]{inputenc}
12 \usepackage{textcomp} % provides euro and other symbols
13\else % if luatex or xelatex
14 \usepackage{unicode-math}
15 \defaultfontfeatures{Scale=MatchLowercase}
16 \defaultfontfeatures[\rmfamily]{Ligatures=TeX,Scale=1}
18% use upquote if available, for straight quotes in verbatim environments
19\IfFileExists{upquote.sty}{\usepackage{upquote}}{}
20\IfFileExists{microtype.sty}{% use microtype if available
21 \usepackage[]{microtype}
22 \UseMicrotypeSet[protrusion]{basicmath} % disable protrusion for tt fonts
25\@ifundefined{KOMAClassName}{% if non-KOMA class
26 \IfFileExists{parskip.sty}{%
29 \setlength{\parindent}{0pt}
30 \setlength{\parskip}{6pt plus 2pt minus 1pt}}
32 \KOMAoptions{parskip=half}}
35\IfFileExists{xurl.sty}{\usepackage{xurl}}{} % add URL line breaks if available
36\IfFileExists{bookmark.sty}{\usepackage{bookmark}}{\usepackage{hyperref}}
40\urlstyle{same} % don't use monospace font for urls
43\newcommand{\VerbBar}{|}
44\newcommand{\VERB}{\Verb[commandchars=\\\{\}]}
45\DefineVerbatimEnvironment{Highlighting}{Verbatim}{commandchars=\\\{\}}
46% Add ',fontsize=\small' for more characters per line
47\newenvironment{Shaded}{}{}
48\newcommand{\AlertTok}[1]{\textcolor[rgb]{1.00,0.00,0.00}{\textbf{#1}}}
49\newcommand{\AnnotationTok}[1]{\textcolor[rgb]{0.38,0.63,0.69}{\textbf{\textit{#1}}}}
50\newcommand{\AttributeTok}[1]{\textcolor[rgb]{0.49,0.56,0.16}{#1}}
51\newcommand{\BaseNTok}[1]{\textcolor[rgb]{0.25,0.63,0.44}{#1}}
52\newcommand{\BuiltInTok}[1]{#1}
53\newcommand{\CharTok}[1]{\textcolor[rgb]{0.25,0.44,0.63}{#1}}
54\newcommand{\CommentTok}[1]{\textcolor[rgb]{0.38,0.63,0.69}{\textit{#1}}}
55\newcommand{\CommentVarTok}[1]{\textcolor[rgb]{0.38,0.63,0.69}{\textbf{\textit{#1}}}}
56\newcommand{\ConstantTok}[1]{\textcolor[rgb]{0.53,0.00,0.00}{#1}}
57\newcommand{\ControlFlowTok}[1]{\textcolor[rgb]{0.00,0.44,0.13}{\textbf{#1}}}
58\newcommand{\DataTypeTok}[1]{\textcolor[rgb]{0.56,0.13,0.00}{#1}}
59\newcommand{\DecValTok}[1]{\textcolor[rgb]{0.25,0.63,0.44}{#1}}
60\newcommand{\DocumentationTok}[1]{\textcolor[rgb]{0.73,0.13,0.13}{\textit{#1}}}
61\newcommand{\ErrorTok}[1]{\textcolor[rgb]{1.00,0.00,0.00}{\textbf{#1}}}
62\newcommand{\ExtensionTok}[1]{#1}
63\newcommand{\FloatTok}[1]{\textcolor[rgb]{0.25,0.63,0.44}{#1}}
64\newcommand{\FunctionTok}[1]{\textcolor[rgb]{0.02,0.16,0.49}{#1}}
65\newcommand{\ImportTok}[1]{#1}
66\newcommand{\InformationTok}[1]{\textcolor[rgb]{0.38,0.63,0.69}{\textbf{\textit{#1}}}}
67\newcommand{\KeywordTok}[1]{\textcolor[rgb]{0.00,0.44,0.13}{\textbf{#1}}}
68\newcommand{\NormalTok}[1]{#1}
69\newcommand{\OperatorTok}[1]{\textcolor[rgb]{0.40,0.40,0.40}{#1}}
70\newcommand{\OtherTok}[1]{\textcolor[rgb]{0.00,0.44,0.13}{#1}}
71\newcommand{\PreprocessorTok}[1]{\textcolor[rgb]{0.74,0.48,0.00}{#1}}
72\newcommand{\RegionMarkerTok}[1]{#1}
73\newcommand{\SpecialCharTok}[1]{\textcolor[rgb]{0.25,0.44,0.63}{#1}}
74\newcommand{\SpecialStringTok}[1]{\textcolor[rgb]{0.73,0.40,0.53}{#1}}
75\newcommand{\StringTok}[1]{\textcolor[rgb]{0.25,0.44,0.63}{#1}}
76\newcommand{\VariableTok}[1]{\textcolor[rgb]{0.10,0.09,0.49}{#1}}
77\newcommand{\VerbatimStringTok}[1]{\textcolor[rgb]{0.25,0.44,0.63}{#1}}
78\newcommand{\WarningTok}[1]{\textcolor[rgb]{0.38,0.63,0.69}{\textbf{\textit{#1}}}}
79\setlength{\emergencystretch}{3em} % prevent overfull lines
80\providecommand{\tightlist}{%
81 \setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}}
82\setcounter{secnumdepth}{-2}
83% Redefines (sub)paragraphs to behave more like sections
84\ifx\paragraph\undefined\else
85 \let\oldparagraph\paragraph
86 \renewcommand{\paragraph}[1]{\oldparagraph{#1}\mbox{}}
88\ifx\subparagraph\undefined\else
89 \let\oldsubparagraph\subparagraph
90 \renewcommand{\subparagraph}[1]{\oldsubparagraph{#1}\mbox{}}
93% set default figure placement to htbp
103\hypertarget{lhs-test}{%
104\section{lhs test}\label{lhs-test}}
106\texttt{unsplit} is an arrow that takes a pair of values and combines them to
107return a single value:
110\begin{Highlighting}[]
111\OtherTok{unsplit ::}\NormalTok{ (}\DataTypeTok{Arrow}\NormalTok{ a) }\OtherTok{=>}\NormalTok{ (b }\OtherTok{->}\NormalTok{ c }\OtherTok{->}\NormalTok{ d) }\OtherTok{->}\NormalTok{ a (b, c) d}
112\NormalTok{unsplit }\OtherTok{=}\NormalTok{ arr }\OperatorTok{.} \FunctionTok{uncurry}
113 \CommentTok{-- arr (\textbackslash{}op (x,y) -> x `op` y)}
117\texttt{(***)} combines two arrows into a new arrow by running the two arrows on a
118pair of values (one arrow on the first item of the pair and one arrow on the
119second item of the pair).
122f *** g = first f >>> second g
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list