@@ -12,9 +12,9 @@
1212 div.column{display: inline-block; vertical-align: top; width: 50%;}
1313 </style>
1414 <style>
15−a.sourceLine { display: inline-block; line-height: 1.25; }
16−a.sourceLine { pointer-events: none; color: inherit; text-decoration: inherit; }
17−a.sourceLine:empty { height: 1.2em; }
15+code.sourceCode > span { display: inline-block; line-height: 1.25; }
16+code.sourceCode > span { color: inherit; text-decoration: inherit; }
17+code.sourceCode > span:empty { height: 1.2em; }
1818.sourceCode { overflow: visible; }
1919code.sourceCode { white-space: pre; position: relative; }
2020div.sourceCode { margin: 1em 0; }
@@ -24,14 +24,16 @@ div.sourceCode { overflow: auto; }
2424}
2525@media print {
2626code.sourceCode { white-space: pre-wrap; }
27−a.sourceLine { text-indent: -1em; padding-left: 1em; }
27+code.sourceCode > span { text-indent: -5em; padding-left: 5em; }
2828}
29−pre.numberSource a.sourceLine
30− { position: relative; left: -4em; }
31−pre.numberSource a.sourceLine::before
32− { content: attr(title);
29+pre.numberSource code
30+ { counter-reset: source-line 0; }
31+pre.numberSource code > span
32+ { position: relative; left: -4em; counter-increment: source-line; }
33+pre.numberSource code > span > a:first-child::before
34+ { content: counter(source-line);
3335 position: relative; left: -1em; text-align: right; vertical-align: baseline;
34− border: none; pointer-events: all; display: inline-block;
36+ border: none; display: inline-block;
3537 -webkit-touch-callout: none; -webkit-user-select: none;
3638 -khtml-user-select: none; -moz-user-select: none;
3739 -ms-user-select: none; user-select: none;
@@ -40,9 +42,9 @@ pre.numberSource a.sourceLine::before
4042 }
4143pre.numberSource { margin-left: 3em; border-left: 1px solid #aaaaaa; padding-left: 4px; }
4244div.sourceCode
43− { }
45+ { }
4446@media screen {
45−a.sourceLine::before { text-decoration: underline; }
47+code.sourceCode > span > a:first-child::before { text-decoration: underline; }
4648}
4749code span.al { color: #ff0000; font-weight: bold; } /* Alert */
4850code span.an { color: #60a0b0; font-weight: bold; font-style: italic; } /* Annotation */
@@ -82,9 +84,9 @@ code span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warni
8284<h1 id="lhs-test">lhs test</h1>
8385<p><code>unsplit</code> is an arrow that takes a pair of values and combines them to
8486return a single value:</p>
85−<div class="sourceCode" id="cb1"><pre class="sourceCode literatehaskell literate"><code class="sourceCode literatehaskell"><a class="sourceLine" id="cb1-1" title="1"><span class="ot">> unsplit ::</span> (<span class="dt">Arrow</span> a) <span class="ot">=></span> (b <span class="ot">-></span> c <span class="ot">-></span> d) <span class="ot">-></span> a (b, c) d</a>
86−<a class="sourceLine" id="cb1-2" title="2"><span class="ot">></span> unsplit <span class="ot">=</span> arr <span class="op">.</span> <span class="fu">uncurry</span></a>
87−<a class="sourceLine" id="cb1-3" title="3"><span class="ot">></span> <span class="co">-- arr (\op (x,y) -> x `op` y)</span></a></code></pre></div>
87+<div class="sourceCode" id="cb1"><pre class="sourceCode literatehaskell literate"><code class="sourceCode literatehaskell"><span id="cb1-1"><a href="#cb1-1"></a><span class="ot">> unsplit ::</span> (<span class="dt">Arrow</span> a) <span class="ot">=></span> (b <span class="ot">-></span> c <span class="ot">-></span> d) <span class="ot">-></span> a (b, c) d</span>
88+<span id="cb1-2"><a href="#cb1-2"></a><span class="ot">></span> unsplit <span class="ot">=</span> arr <span class="op">.</span> <span class="fu">uncurry</span></span>
89+<span id="cb1-3"><a href="#cb1-3"></a><span class="ot">></span> <span class="co">-- arr (\op (x,y) -> x `op` y)</span></span></code></pre></div>
8890<p><code>(***)</code> combines two arrows into a new arrow by running the two arrows on a
8991pair of values (one arrow on the first item of the pair and one arrow on the
9092second item of the pair).</p>