prelude 0.0.3 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (43) hide show
  1. data/CHANGELOG +25 -1
  2. data/README +11 -12
  3. data/Rakefile +6 -10
  4. data/lib/prelude.rb +36 -91
  5. data/lib/prelude/{tuple.rb → array_list.rb} +30 -27
  6. data/lib/prelude/functions.rb +414 -0
  7. data/lib/prelude/functors.rb +72 -0
  8. data/lib/prelude/lambda.rb +89 -0
  9. data/lib/prelude/minimal_array_list.rb +61 -0
  10. data/lib/prelude/monad.rb +11 -15
  11. data/lib/prelude/proper_list.rb +47 -0
  12. data/lib/prelude/proper_ruby_list.rb +48 -0
  13. data/lib/prelude/util.rb +33 -0
  14. data/test/tc_functions.rb +801 -0
  15. data/test/tc_monad.rb +21 -41
  16. data/test/ts_prelude.rb +2 -8
  17. metadata +13 -36
  18. data/doc/classes/Kernel.html +0 -198
  19. data/doc/classes/Prelude.html +0 -241
  20. data/doc/classes/Prelude/EmptyListError.html +0 -113
  21. data/doc/classes/Prelude/List.html +0 -2692
  22. data/doc/classes/Prelude/MissingFunctionError.html +0 -113
  23. data/doc/classes/Prelude/Monad.html +0 -283
  24. data/doc/classes/Prelude/Tuple.html +0 -217
  25. data/doc/classes/Proc.html +0 -198
  26. data/doc/classes/Symbol.html +0 -219
  27. data/doc/created.rid +0 -1
  28. data/doc/files/CHANGELOG.html +0 -122
  29. data/doc/files/README.html +0 -328
  30. data/doc/files/TODO.html +0 -95
  31. data/doc/files/lib/prelude/list_rb.html +0 -83
  32. data/doc/files/lib/prelude/monad_rb.html +0 -83
  33. data/doc/files/lib/prelude/tuple_rb.html +0 -83
  34. data/doc/files/lib/prelude_rb.html +0 -98
  35. data/doc/fr_class_index.html +0 -35
  36. data/doc/fr_file_index.html +0 -33
  37. data/doc/fr_method_index.html +0 -140
  38. data/doc/index.html +0 -27
  39. data/doc/rdoc-style.css +0 -208
  40. data/lib/prelude/list.rb +0 -588
  41. data/test/tc_higher.rb +0 -89
  42. data/test/tc_list.rb +0 -777
  43. data/test/tc_tuple.rb +0 -82
@@ -1,113 +0,0 @@
1
- <?xml version="1.0" encoding="iso-8859-1"?>
2
- <!DOCTYPE html
3
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
-
6
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7
- <head>
8
- <title>Class: Prelude::EmptyListError</title>
9
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
11
- <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
12
- <script type="text/javascript">
13
- // <![CDATA[
14
-
15
- function popupCode( url ) {
16
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
17
- }
18
-
19
- function toggleCode( id ) {
20
- if ( document.getElementById )
21
- elem = document.getElementById( id );
22
- else if ( document.all )
23
- elem = eval( "document.all." + id );
24
- else
25
- return false;
26
-
27
- elemStyle = elem.style;
28
-
29
- if ( elemStyle.display != "block" ) {
30
- elemStyle.display = "block"
31
- } else {
32
- elemStyle.display = "none"
33
- }
34
-
35
- return true;
36
- }
37
-
38
- // Make codeblocks hidden by default
39
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
40
-
41
- // ]]>
42
- </script>
43
-
44
- </head>
45
- <body>
46
-
47
-
48
-
49
- <div id="classHeader">
50
- <table class="header-table">
51
- <tr class="top-aligned-row">
52
- <td><strong>Class</strong></td>
53
- <td class="class-name-in-header">Prelude::EmptyListError</td>
54
- </tr>
55
- <tr class="top-aligned-row">
56
- <td><strong>In:</strong></td>
57
- <td>
58
- <a href="../../files/lib/prelude_rb.html">
59
- lib/prelude.rb
60
- </a>
61
- <br />
62
- </td>
63
- </tr>
64
-
65
- <tr class="top-aligned-row">
66
- <td><strong>Parent:</strong></td>
67
- <td>
68
- RuntimeError
69
- </td>
70
- </tr>
71
- </table>
72
- </div>
73
- <!-- banner header -->
74
-
75
- <div id="bodyContent">
76
-
77
-
78
-
79
- <div id="contextContent">
80
-
81
- <div id="description">
82
- <p>
83
- Thrown if an illegal operation is performed on an empty list.
84
- </p>
85
-
86
- </div>
87
-
88
-
89
- </div>
90
-
91
-
92
- </div>
93
-
94
-
95
- <!-- if includes -->
96
-
97
- <div id="section">
98
-
99
-
100
-
101
-
102
-
103
-
104
-
105
-
106
- <!-- if method_list -->
107
-
108
-
109
- </div>
110
-
111
-
112
- </body>
113
- </html>
@@ -1,2692 +0,0 @@
1
- <?xml version="1.0" encoding="iso-8859-1"?>
2
- <!DOCTYPE html
3
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
-
6
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7
- <head>
8
- <title>Module: Prelude::List</title>
9
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
11
- <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
12
- <script type="text/javascript">
13
- // <![CDATA[
14
-
15
- function popupCode( url ) {
16
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
17
- }
18
-
19
- function toggleCode( id ) {
20
- if ( document.getElementById )
21
- elem = document.getElementById( id );
22
- else if ( document.all )
23
- elem = eval( "document.all." + id );
24
- else
25
- return false;
26
-
27
- elemStyle = elem.style;
28
-
29
- if ( elemStyle.display != "block" ) {
30
- elemStyle.display = "block"
31
- } else {
32
- elemStyle.display = "none"
33
- }
34
-
35
- return true;
36
- }
37
-
38
- // Make codeblocks hidden by default
39
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
40
-
41
- // ]]>
42
- </script>
43
-
44
- </head>
45
- <body>
46
-
47
-
48
-
49
- <div id="classHeader">
50
- <table class="header-table">
51
- <tr class="top-aligned-row">
52
- <td><strong>Module</strong></td>
53
- <td class="class-name-in-header">Prelude::List</td>
54
- </tr>
55
- <tr class="top-aligned-row">
56
- <td><strong>In:</strong></td>
57
- <td>
58
- <a href="../../files/lib/prelude/list_rb.html">
59
- lib/prelude/list.rb
60
- </a>
61
- <br />
62
- </td>
63
- </tr>
64
-
65
- </table>
66
- </div>
67
- <!-- banner header -->
68
-
69
- <div id="bodyContent">
70
-
71
-
72
-
73
- <div id="contextContent">
74
-
75
- <div id="description">
76
- <p>
77
- $Id: list.rb 17 2006-09-17 18:03:15Z prelude $
78
- </p>
79
- <p>
80
- This eventually needs to be implemented with lazy lists, see <a
81
- href="http://lazylist.rubyforge.org">lazylist.rubyforge.org</a> for details
82
- </p>
83
- <p>
84
- I used the signatures of Haskell&#8217;s List.hs file in order not to
85
- forget to implement the functions defined there and to remind of what was
86
- intended.
87
- </p>
88
-
89
- </div>
90
-
91
-
92
- </div>
93
-
94
- <div id="method-list">
95
- <h3 class="section-bar">Methods</h3>
96
-
97
- <div class="name-list">
98
- <a href="#M000038">all</a>&nbsp;&nbsp;
99
- <a href="#M000035">and_</a>&nbsp;&nbsp;
100
- <a href="#M000037">any</a>&nbsp;&nbsp;
101
- <a href="#M000064">break_</a>&nbsp;&nbsp;
102
- <a href="#M000032">concat</a>&nbsp;&nbsp;
103
- <a href="#M000034">concatMap</a>&nbsp;&nbsp;
104
- <a href="#M000033">concat_map</a>&nbsp;&nbsp;
105
- <a href="#M000054">cycle</a>&nbsp;&nbsp;
106
- <a href="#M000104">delete</a>&nbsp;&nbsp;
107
- <a href="#M000057">drop</a>&nbsp;&nbsp;
108
- <a href="#M000062">dropWhile</a>&nbsp;&nbsp;
109
- <a href="#M000061">drop_while</a>&nbsp;&nbsp;
110
- <a href="#M000072">elem</a>&nbsp;&nbsp;
111
- <a href="#M000080">elemIndex</a>&nbsp;&nbsp;
112
- <a href="#M000082">elemIndices</a>&nbsp;&nbsp;
113
- <a href="#M000079">elem_index</a>&nbsp;&nbsp;
114
- <a href="#M000081">elem_indices</a>&nbsp;&nbsp;
115
- <a href="#M000077">filter</a>&nbsp;&nbsp;
116
- <a href="#M000076">find</a>&nbsp;&nbsp;
117
- <a href="#M000084">findIndex</a>&nbsp;&nbsp;
118
- <a href="#M000086">findIndices</a>&nbsp;&nbsp;
119
- <a href="#M000083">find_index</a>&nbsp;&nbsp;
120
- <a href="#M000085">find_indices</a>&nbsp;&nbsp;
121
- <a href="#M000026">foldl</a>&nbsp;&nbsp;
122
- <a href="#M000028">foldl1</a>&nbsp;&nbsp;
123
- <a href="#M000029">foldl1_</a>&nbsp;&nbsp;
124
- <a href="#M000027">foldl_</a>&nbsp;&nbsp;
125
- <a href="#M000030">foldr</a>&nbsp;&nbsp;
126
- <a href="#M000031">foldr1</a>&nbsp;&nbsp;
127
- <a href="#M000065">group</a>&nbsp;&nbsp;
128
- <a href="#M000016">head</a>&nbsp;&nbsp;
129
- <a href="#M000019">init</a>&nbsp;&nbsp;
130
- <a href="#M000066">inits</a>&nbsp;&nbsp;
131
- <a href="#M000108">insert</a>&nbsp;&nbsp;
132
- <a href="#M000106">intersect</a>&nbsp;&nbsp;
133
- <a href="#M000024">intersperse</a>&nbsp;&nbsp;
134
- <a href="#M000069">isPrefixOf</a>&nbsp;&nbsp;
135
- <a href="#M000071">isSuffixOf</a>&nbsp;&nbsp;
136
- <a href="#M000068">is_prefix_of</a>&nbsp;&nbsp;
137
- <a href="#M000070">is_suffix_of</a>&nbsp;&nbsp;
138
- <a href="#M000051">iterate</a>&nbsp;&nbsp;
139
- <a href="#M000018">last</a>&nbsp;&nbsp;
140
- <a href="#M000021">length</a>&nbsp;&nbsp;
141
- <a href="#M000099">lines</a>&nbsp;&nbsp;
142
- <a href="#M000075">lookup</a>&nbsp;&nbsp;
143
- <a href="#M000022">map</a>&nbsp;&nbsp;
144
- <a href="#M000048">mapAccumL</a>&nbsp;&nbsp;
145
- <a href="#M000050">mapAccumR</a>&nbsp;&nbsp;
146
- <a href="#M000047">map_accum_l</a>&nbsp;&nbsp;
147
- <a href="#M000049">map_accum_r</a>&nbsp;&nbsp;
148
- <a href="#M000041">maximum</a>&nbsp;&nbsp;
149
- <a href="#M000042">minimum</a>&nbsp;&nbsp;
150
- <a href="#M000074">notElem</a>&nbsp;&nbsp;
151
- <a href="#M000073">not_elem</a>&nbsp;&nbsp;
152
- <a href="#M000103">nub</a>&nbsp;&nbsp;
153
- <a href="#M000020">null</a>&nbsp;&nbsp;
154
- <a href="#M000036">or_</a>&nbsp;&nbsp;
155
- <a href="#M000078">partition</a>&nbsp;&nbsp;
156
- <a href="#M000040">product</a>&nbsp;&nbsp;
157
- <a href="#M000052">repeat</a>&nbsp;&nbsp;
158
- <a href="#M000053">replicate</a>&nbsp;&nbsp;
159
- <a href="#M000023">reverse</a>&nbsp;&nbsp;
160
- <a href="#M000043">scanl</a>&nbsp;&nbsp;
161
- <a href="#M000044">scanl1</a>&nbsp;&nbsp;
162
- <a href="#M000045">scanr</a>&nbsp;&nbsp;
163
- <a href="#M000046">scanr1</a>&nbsp;&nbsp;
164
- <a href="#M000107">sort</a>&nbsp;&nbsp;
165
- <a href="#M000063">span</a>&nbsp;&nbsp;
166
- <a href="#M000058">split_at</a>&nbsp;&nbsp;
167
- <a href="#M000039">sum</a>&nbsp;&nbsp;
168
- <a href="#M000017">tail</a>&nbsp;&nbsp;
169
- <a href="#M000067">tails</a>&nbsp;&nbsp;
170
- <a href="#M000056">take</a>&nbsp;&nbsp;
171
- <a href="#M000060">takeWhile</a>&nbsp;&nbsp;
172
- <a href="#M000059">take_while</a>&nbsp;&nbsp;
173
- <a href="#M000025">transpose</a>&nbsp;&nbsp;
174
- <a href="#M000055">unfoldr</a>&nbsp;&nbsp;
175
- <a href="#M000105">union</a>&nbsp;&nbsp;
176
- <a href="#M000101">unlines</a>&nbsp;&nbsp;
177
- <a href="#M000102">unwords</a>&nbsp;&nbsp;
178
- <a href="#M000096">unzip</a>&nbsp;&nbsp;
179
- <a href="#M000097">unzip3</a>&nbsp;&nbsp;
180
- <a href="#M000098">unzip4</a>&nbsp;&nbsp;
181
- <a href="#M000100">words</a>&nbsp;&nbsp;
182
- <a href="#M000087">zip</a>&nbsp;&nbsp;
183
- <a href="#M000088">zip3</a>&nbsp;&nbsp;
184
- <a href="#M000089">zip4</a>&nbsp;&nbsp;
185
- <a href="#M000091">zipWith</a>&nbsp;&nbsp;
186
- <a href="#M000093">zipWith3</a>&nbsp;&nbsp;
187
- <a href="#M000095">zipWith4</a>&nbsp;&nbsp;
188
- <a href="#M000090">zip_with</a>&nbsp;&nbsp;
189
- <a href="#M000092">zip_with3</a>&nbsp;&nbsp;
190
- <a href="#M000094">zip_with4</a>&nbsp;&nbsp;
191
- </div>
192
- </div>
193
-
194
- </div>
195
-
196
-
197
- <!-- if includes -->
198
-
199
- <div id="section">
200
-
201
-
202
-
203
-
204
-
205
-
206
-
207
-
208
- <!-- if method_list -->
209
- <div id="methods">
210
- <h3 class="section-bar">Public Instance methods</h3>
211
-
212
- <div id="method-M000038" class="method-detail">
213
- <a name="M000038"></a>
214
-
215
- <div class="method-heading">
216
- <a href="#M000038" class="method-signature">
217
- <span class="method-name">all</span><span class="method-args">(f, list)</span>
218
- </a>
219
- </div>
220
-
221
- <div class="method-description">
222
- <table>
223
- <tr><td valign="top">all &#8212; :</td><td>(a -&gt; Bool) -&gt; [a] -&gt; Bool
224
-
225
- </td></tr>
226
- </table>
227
- <p><a class="source-toggle" href="#"
228
- onclick="toggleCode('M000038-source');return false;">[Source]</a></p>
229
- <div class="method-source-code" id="M000038-source">
230
- <pre>
231
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 180</span>
232
- 180: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">all</span>(<span class="ruby-identifier">f</span>, <span class="ruby-identifier">list</span>)
233
- 181: <span class="ruby-identifier">and_</span>(<span class="ruby-operator">~</span><span class="ruby-identifier">map</span>(<span class="ruby-identifier">f</span>, <span class="ruby-identifier">list</span>))
234
- 182: <span class="ruby-keyword kw">end</span>
235
- </pre>
236
- </div>
237
- </div>
238
- </div>
239
-
240
- <div id="method-M000035" class="method-detail">
241
- <a name="M000035"></a>
242
-
243
- <div class="method-heading">
244
- <a href="#M000035" class="method-signature">
245
- <span class="method-name">and_</span><span class="method-args">(list)</span>
246
- </a>
247
- </div>
248
-
249
- <div class="method-description">
250
- <table>
251
- <tr><td valign="top">and &#8212; :</td><td>[Bool] -&gt; Bool
252
-
253
- </td></tr>
254
- </table>
255
- <p><a class="source-toggle" href="#"
256
- onclick="toggleCode('M000035-source');return false;">[Source]</a></p>
257
- <div class="method-source-code" id="M000035-source">
258
- <pre>
259
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 165</span>
260
- 165: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">and_</span>(<span class="ruby-identifier">list</span>)
261
- 166: <span class="ruby-identifier">foldr</span>(<span class="ruby-identifier">lambda</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">x</span>,<span class="ruby-identifier">y</span><span class="ruby-operator">|</span> <span class="ruby-identifier">x</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">y</span>}, <span class="ruby-keyword kw">true</span>, <span class="ruby-identifier">list</span>)
262
- 167: <span class="ruby-keyword kw">end</span>
263
- </pre>
264
- </div>
265
- </div>
266
- </div>
267
-
268
- <div id="method-M000037" class="method-detail">
269
- <a name="M000037"></a>
270
-
271
- <div class="method-heading">
272
- <a href="#M000037" class="method-signature">
273
- <span class="method-name">any</span><span class="method-args">(f, list)</span>
274
- </a>
275
- </div>
276
-
277
- <div class="method-description">
278
- <table>
279
- <tr><td valign="top">any &#8212; :</td><td>(a -&gt; Bool) -&gt; [a] -&gt; Bool
280
-
281
- </td></tr>
282
- </table>
283
- <p><a class="source-toggle" href="#"
284
- onclick="toggleCode('M000037-source');return false;">[Source]</a></p>
285
- <div class="method-source-code" id="M000037-source">
286
- <pre>
287
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 175</span>
288
- 175: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">any</span>(<span class="ruby-identifier">f</span>, <span class="ruby-identifier">list</span>)
289
- 176: <span class="ruby-identifier">or_</span>(<span class="ruby-operator">~</span><span class="ruby-identifier">map</span>(<span class="ruby-identifier">f</span>, <span class="ruby-identifier">list</span>))
290
- 177: <span class="ruby-keyword kw">end</span>
291
- </pre>
292
- </div>
293
- </div>
294
- </div>
295
-
296
- <div id="method-M000064" class="method-detail">
297
- <a name="M000064"></a>
298
-
299
- <div class="method-heading">
300
- <a href="#M000064" class="method-signature">
301
- <span class="method-name">break_</span><span class="method-args">(list)</span>
302
- </a>
303
- </div>
304
-
305
- <div class="method-description">
306
- <table>
307
- <tr><td valign="top">break &#8212; :</td><td>(a -&gt; Bool) -&gt; [a] -&gt; ([a], [a])
308
-
309
- </td></tr>
310
- </table>
311
- <p><a class="source-toggle" href="#"
312
- onclick="toggleCode('M000064-source');return false;">[Source]</a></p>
313
- <div class="method-source-code" id="M000064-source">
314
- <pre>
315
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 333</span>
316
- 333: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">break_</span>(<span class="ruby-identifier">list</span>)
317
- 334: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'break' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
318
- 335: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
319
- 336: <span class="ruby-keyword kw">end</span>
320
- </pre>
321
- </div>
322
- </div>
323
- </div>
324
-
325
- <div id="method-M000032" class="method-detail">
326
- <a name="M000032"></a>
327
-
328
- <div class="method-heading">
329
- <a href="#M000032" class="method-signature">
330
- <span class="method-name">concat</span><span class="method-args">(list)</span>
331
- </a>
332
- </div>
333
-
334
- <div class="method-description">
335
- <table>
336
- <tr><td valign="top">concat &#8212; :</td><td>[[a]] -&gt; [a]
337
-
338
- </td></tr>
339
- </table>
340
- <p><a class="source-toggle" href="#"
341
- onclick="toggleCode('M000032-source');return false;">[Source]</a></p>
342
- <div class="method-source-code" id="M000032-source">
343
- <pre>
344
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 153</span>
345
- 153: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">concat</span>(<span class="ruby-identifier">list</span>)
346
- 154: <span class="ruby-identifier">foldr</span>(<span class="ruby-operator">-</span><span class="ruby-identifier">:+</span>, [], <span class="ruby-identifier">list</span>)
347
- 155: <span class="ruby-keyword kw">end</span>
348
- </pre>
349
- </div>
350
- </div>
351
- </div>
352
-
353
- <div id="method-M000034" class="method-detail">
354
- <a name="M000034"></a>
355
-
356
- <div class="method-heading">
357
- <span class="method-name">concatMap</span><span class="method-args">(list)</span>
358
- </div>
359
-
360
- <div class="method-description">
361
- <p>
362
- Alias for <a href="List.html#M000033">concat_map</a>
363
- </p>
364
- </div>
365
- </div>
366
-
367
- <div id="method-M000033" class="method-detail">
368
- <a name="M000033"></a>
369
-
370
- <div class="method-heading">
371
- <a href="#M000033" class="method-signature">
372
- <span class="method-name">concat_map</span><span class="method-args">(list)</span>
373
- </a>
374
- </div>
375
-
376
- <div class="method-description">
377
- <table>
378
- <tr><td valign="top">concatMap &#8212; :</td><td>(a -&gt; [b]) -&gt; [a] -&gt; [b]
379
-
380
- </td></tr>
381
- </table>
382
- <p><a class="source-toggle" href="#"
383
- onclick="toggleCode('M000033-source');return false;">[Source]</a></p>
384
- <div class="method-source-code" id="M000033-source">
385
- <pre>
386
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 158</span>
387
- 158: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">concat_map</span>(<span class="ruby-identifier">list</span>)
388
- 159: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'concatMap' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
389
- 160: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
390
- 161: <span class="ruby-keyword kw">end</span>
391
- </pre>
392
- </div>
393
- </div>
394
- </div>
395
-
396
- <div id="method-M000054" class="method-detail">
397
- <a name="M000054"></a>
398
-
399
- <div class="method-heading">
400
- <a href="#M000054" class="method-signature">
401
- <span class="method-name">cycle</span><span class="method-args">(list)</span>
402
- </a>
403
- </div>
404
-
405
- <div class="method-description">
406
- <table>
407
- <tr><td valign="top">cycle &#8212; :</td><td>[a] -&gt; [a]
408
-
409
- </td></tr>
410
- </table>
411
- <p><a class="source-toggle" href="#"
412
- onclick="toggleCode('M000054-source');return false;">[Source]</a></p>
413
- <div class="method-source-code" id="M000054-source">
414
- <pre>
415
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 275</span>
416
- 275: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cycle</span>(<span class="ruby-identifier">list</span>)
417
- 276: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'cycle' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
418
- 277: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
419
- 278: <span class="ruby-keyword kw">end</span>
420
- </pre>
421
- </div>
422
- </div>
423
- </div>
424
-
425
- <div id="method-M000104" class="method-detail">
426
- <a name="M000104"></a>
427
-
428
- <div class="method-heading">
429
- <a href="#M000104" class="method-signature">
430
- <span class="method-name">delete</span><span class="method-args">(o, list)</span>
431
- </a>
432
- </div>
433
-
434
- <div class="method-description">
435
- <table>
436
- <tr><td valign="top">delete &#8212; :</td><td>(Eq a) =&gt; a -&gt; [a] -&gt; [a]
437
-
438
- </td></tr>
439
- </table>
440
- <p><a class="source-toggle" href="#"
441
- onclick="toggleCode('M000104-source');return false;">[Source]</a></p>
442
- <div class="method-source-code" id="M000104-source">
443
- <pre>
444
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 555</span>
445
- 555: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">delete</span>(<span class="ruby-identifier">o</span>, <span class="ruby-identifier">list</span>)
446
- 556: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'delete' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
447
- 557: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
448
- 558: <span class="ruby-keyword kw">end</span>
449
- </pre>
450
- </div>
451
- </div>
452
- </div>
453
-
454
- <div id="method-M000057" class="method-detail">
455
- <a name="M000057"></a>
456
-
457
- <div class="method-heading">
458
- <a href="#M000057" class="method-signature">
459
- <span class="method-name">drop</span><span class="method-args">(n, list)</span>
460
- </a>
461
- </div>
462
-
463
- <div class="method-description">
464
- <table>
465
- <tr><td valign="top">drop &#8212; :</td><td>Int -&gt; [a] -&gt; [a]
466
-
467
- </td></tr>
468
- </table>
469
- <p><a class="source-toggle" href="#"
470
- onclick="toggleCode('M000057-source');return false;">[Source]</a></p>
471
- <div class="method-source-code" id="M000057-source">
472
- <pre>
473
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 298</span>
474
- 298: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">drop</span>(<span class="ruby-identifier">n</span>, <span class="ruby-identifier">list</span>)
475
- 299: <span class="ruby-identifier">lambda</span> { <span class="ruby-identifier">list</span>[<span class="ruby-identifier">n</span><span class="ruby-operator">..</span><span class="ruby-value">-1</span>] }
476
- 300: <span class="ruby-keyword kw">end</span>
477
- </pre>
478
- </div>
479
- </div>
480
- </div>
481
-
482
- <div id="method-M000062" class="method-detail">
483
- <a name="M000062"></a>
484
-
485
- <div class="method-heading">
486
- <span class="method-name">dropWhile</span><span class="method-args">(p, list)</span>
487
- </div>
488
-
489
- <div class="method-description">
490
- <p>
491
- Alias for <a href="List.html#M000061">drop_while</a>
492
- </p>
493
- </div>
494
- </div>
495
-
496
- <div id="method-M000061" class="method-detail">
497
- <a name="M000061"></a>
498
-
499
- <div class="method-heading">
500
- <a href="#M000061" class="method-signature">
501
- <span class="method-name">drop_while</span><span class="method-args">(p, list)</span>
502
- </a>
503
- </div>
504
-
505
- <div class="method-description">
506
- <table>
507
- <tr><td valign="top">dropWhile &#8212; :</td><td>(a -&gt; Bool) -&gt; [a] -&gt; [a]
508
-
509
- </td></tr>
510
- </table>
511
- <p><a class="source-toggle" href="#"
512
- onclick="toggleCode('M000061-source');return false;">[Source]</a></p>
513
- <div class="method-source-code" id="M000061-source">
514
- <pre>
515
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 318</span>
516
- 318: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">drop_while</span>(<span class="ruby-identifier">p</span>, <span class="ruby-identifier">list</span>)
517
- 319: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">list</span>
518
- 320: <span class="ruby-keyword kw">when</span> [] <span class="ruby-operator">:</span> <span class="ruby-identifier">lambda</span> { [] }
519
- 321: <span class="ruby-keyword kw">else</span> <span class="ruby-identifier">p</span>[<span class="ruby-operator">~</span><span class="ruby-identifier">head</span>(<span class="ruby-identifier">list</span>)] <span class="ruby-operator">?</span> <span class="ruby-identifier">lambda</span> { <span class="ruby-operator">~</span><span class="ruby-identifier">drop_while</span>(<span class="ruby-identifier">p</span>, <span class="ruby-operator">~</span><span class="ruby-identifier">tail</span>(<span class="ruby-identifier">list</span>)) } <span class="ruby-operator">:</span> <span class="ruby-identifier">lambda</span> { <span class="ruby-identifier">list</span> }
520
- 322: <span class="ruby-keyword kw">end</span>
521
- 323: <span class="ruby-keyword kw">end</span>
522
- </pre>
523
- </div>
524
- </div>
525
- </div>
526
-
527
- <div id="method-M000072" class="method-detail">
528
- <a name="M000072"></a>
529
-
530
- <div class="method-heading">
531
- <a href="#M000072" class="method-signature">
532
- <span class="method-name">elem</span><span class="method-args">(list)</span>
533
- </a>
534
- </div>
535
-
536
- <div class="method-description">
537
- <table>
538
- <tr><td valign="top">elem &#8212; :</td><td>a -&gt; [a] -&gt; Bool
539
-
540
- </td></tr>
541
- </table>
542
- <p><a class="source-toggle" href="#"
543
- onclick="toggleCode('M000072-source');return false;">[Source]</a></p>
544
- <div class="method-source-code" id="M000072-source">
545
- <pre>
546
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 379</span>
547
- 379: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">elem</span>(<span class="ruby-identifier">list</span>)
548
- 380: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'elem' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
549
- 381: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
550
- 382: <span class="ruby-keyword kw">end</span>
551
- </pre>
552
- </div>
553
- </div>
554
- </div>
555
-
556
- <div id="method-M000080" class="method-detail">
557
- <a name="M000080"></a>
558
-
559
- <div class="method-heading">
560
- <span class="method-name">elemIndex</span><span class="method-args">(list)</span>
561
- </div>
562
-
563
- <div class="method-description">
564
- <p>
565
- Alias for <a href="List.html#M000079">elem_index</a>
566
- </p>
567
- </div>
568
- </div>
569
-
570
- <div id="method-M000082" class="method-detail">
571
- <a name="M000082"></a>
572
-
573
- <div class="method-heading">
574
- <span class="method-name">elemIndices</span><span class="method-args">(list)</span>
575
- </div>
576
-
577
- <div class="method-description">
578
- <p>
579
- Alias for <a href="List.html#M000081">elem_indices</a>
580
- </p>
581
- </div>
582
- </div>
583
-
584
- <div id="method-M000079" class="method-detail">
585
- <a name="M000079"></a>
586
-
587
- <div class="method-heading">
588
- <a href="#M000079" class="method-signature">
589
- <span class="method-name">elem_index</span><span class="method-args">(list)</span>
590
- </a>
591
- </div>
592
-
593
- <div class="method-description">
594
- <table>
595
- <tr><td valign="top">elemIndex &#8212; :</td><td>(Eq a) =&gt; a -&gt; [a] -&gt; Maybe Int
596
-
597
- </td></tr>
598
- </table>
599
- <p><a class="source-toggle" href="#"
600
- onclick="toggleCode('M000079-source');return false;">[Source]</a></p>
601
- <div class="method-source-code" id="M000079-source">
602
- <pre>
603
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 425</span>
604
- 425: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">elem_index</span>(<span class="ruby-identifier">list</span>)
605
- 426: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'elem_index' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
606
- 427: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
607
- 428: <span class="ruby-keyword kw">end</span>
608
- </pre>
609
- </div>
610
- </div>
611
- </div>
612
-
613
- <div id="method-M000081" class="method-detail">
614
- <a name="M000081"></a>
615
-
616
- <div class="method-heading">
617
- <a href="#M000081" class="method-signature">
618
- <span class="method-name">elem_indices</span><span class="method-args">(list)</span>
619
- </a>
620
- </div>
621
-
622
- <div class="method-description">
623
- <table>
624
- <tr><td valign="top">elemIndices &#8212; :</td><td>(Eq a) =&gt; a -&gt; [a] -&gt; [Int]
625
-
626
- </td></tr>
627
- </table>
628
- <p><a class="source-toggle" href="#"
629
- onclick="toggleCode('M000081-source');return false;">[Source]</a></p>
630
- <div class="method-source-code" id="M000081-source">
631
- <pre>
632
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 433</span>
633
- 433: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">elem_indices</span>(<span class="ruby-identifier">list</span>)
634
- 434: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'elem_indices' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
635
- 435: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
636
- 436: <span class="ruby-keyword kw">end</span>
637
- </pre>
638
- </div>
639
- </div>
640
- </div>
641
-
642
- <div id="method-M000077" class="method-detail">
643
- <a name="M000077"></a>
644
-
645
- <div class="method-heading">
646
- <a href="#M000077" class="method-signature">
647
- <span class="method-name">filter</span><span class="method-args">(list)</span>
648
- </a>
649
- </div>
650
-
651
- <div class="method-description">
652
- <table>
653
- <tr><td valign="top">filter &#8212; :</td><td>(a -&gt; Bool) -&gt; [a] -&gt; [a]
654
-
655
- </td></tr>
656
- </table>
657
- <p><a class="source-toggle" href="#"
658
- onclick="toggleCode('M000077-source');return false;">[Source]</a></p>
659
- <div class="method-source-code" id="M000077-source">
660
- <pre>
661
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 407</span>
662
- 407: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">filter</span>(<span class="ruby-identifier">list</span>)
663
- 408: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'filter' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
664
- 409: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
665
- 410: <span class="ruby-keyword kw">end</span>
666
- </pre>
667
- </div>
668
- </div>
669
- </div>
670
-
671
- <div id="method-M000076" class="method-detail">
672
- <a name="M000076"></a>
673
-
674
- <div class="method-heading">
675
- <a href="#M000076" class="method-signature">
676
- <span class="method-name">find</span><span class="method-args">(p, list)</span>
677
- </a>
678
- </div>
679
-
680
- <div class="method-description">
681
- <table>
682
- <tr><td valign="top">find &#8212; :</td><td>(a -&gt; Bool) -&gt; [a] -&gt; Maybe a
683
-
684
- </td></tr>
685
- </table>
686
- <p><a class="source-toggle" href="#"
687
- onclick="toggleCode('M000076-source');return false;">[Source]</a></p>
688
- <div class="method-source-code" id="M000076-source">
689
- <pre>
690
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 401</span>
691
- 401: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">find</span>(<span class="ruby-identifier">p</span>, <span class="ruby-identifier">list</span>)
692
- 402: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'find' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
693
- 403: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
694
- 404: <span class="ruby-keyword kw">end</span>
695
- </pre>
696
- </div>
697
- </div>
698
- </div>
699
-
700
- <div id="method-M000084" class="method-detail">
701
- <a name="M000084"></a>
702
-
703
- <div class="method-heading">
704
- <span class="method-name">findIndex</span><span class="method-args">(list)</span>
705
- </div>
706
-
707
- <div class="method-description">
708
- <p>
709
- Alias for <a href="List.html#M000083">find_index</a>
710
- </p>
711
- </div>
712
- </div>
713
-
714
- <div id="method-M000086" class="method-detail">
715
- <a name="M000086"></a>
716
-
717
- <div class="method-heading">
718
- <span class="method-name">findIndices</span><span class="method-args">(list)</span>
719
- </div>
720
-
721
- <div class="method-description">
722
- <p>
723
- Alias for <a href="List.html#M000085">find_indices</a>
724
- </p>
725
- </div>
726
- </div>
727
-
728
- <div id="method-M000083" class="method-detail">
729
- <a name="M000083"></a>
730
-
731
- <div class="method-heading">
732
- <a href="#M000083" class="method-signature">
733
- <span class="method-name">find_index</span><span class="method-args">(list)</span>
734
- </a>
735
- </div>
736
-
737
- <div class="method-description">
738
- <table>
739
- <tr><td valign="top">findIndex &#8212; :</td><td>(a -&gt; Bool) -&gt; [a] -&gt; Maybe Int
740
-
741
- </td></tr>
742
- </table>
743
- <p><a class="source-toggle" href="#"
744
- onclick="toggleCode('M000083-source');return false;">[Source]</a></p>
745
- <div class="method-source-code" id="M000083-source">
746
- <pre>
747
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 441</span>
748
- 441: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">find_index</span>(<span class="ruby-identifier">list</span>)
749
- 442: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'find_index' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
750
- 443: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
751
- 444: <span class="ruby-keyword kw">end</span>
752
- </pre>
753
- </div>
754
- </div>
755
- </div>
756
-
757
- <div id="method-M000085" class="method-detail">
758
- <a name="M000085"></a>
759
-
760
- <div class="method-heading">
761
- <a href="#M000085" class="method-signature">
762
- <span class="method-name">find_indices</span><span class="method-args">(list)</span>
763
- </a>
764
- </div>
765
-
766
- <div class="method-description">
767
- <table>
768
- <tr><td valign="top">findIndices &#8212; :</td><td>(a -&gt; Bool) -&gt; [a] -&gt; [Int]
769
-
770
- </td></tr>
771
- </table>
772
- <p><a class="source-toggle" href="#"
773
- onclick="toggleCode('M000085-source');return false;">[Source]</a></p>
774
- <div class="method-source-code" id="M000085-source">
775
- <pre>
776
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 449</span>
777
- 449: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">find_indices</span>(<span class="ruby-identifier">list</span>)
778
- 450: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'find_indices' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
779
- 451: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
780
- 452: <span class="ruby-keyword kw">end</span>
781
- </pre>
782
- </div>
783
- </div>
784
- </div>
785
-
786
- <div id="method-M000026" class="method-detail">
787
- <a name="M000026"></a>
788
-
789
- <div class="method-heading">
790
- <a href="#M000026" class="method-signature">
791
- <span class="method-name">foldl</span><span class="method-args">(f, a, list)</span>
792
- </a>
793
- </div>
794
-
795
- <div class="method-description">
796
- <table>
797
- <tr><td valign="top">foldl &#8212; :</td><td>(a -&gt; b -&gt; a) -&gt; a -&gt; [b] -&gt; a
798
-
799
- </td></tr>
800
- </table>
801
- <p><a class="source-toggle" href="#"
802
- onclick="toggleCode('M000026-source');return false;">[Source]</a></p>
803
- <div class="method-source-code" id="M000026-source">
804
- <pre>
805
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 113</span>
806
- 113: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">foldl</span>(<span class="ruby-identifier">f</span>, <span class="ruby-identifier">a</span>, <span class="ruby-identifier">list</span>)
807
- 114: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">list</span>
808
- 115: <span class="ruby-keyword kw">when</span> [] <span class="ruby-operator">:</span> <span class="ruby-identifier">lambda</span> { <span class="ruby-identifier">a</span> }
809
- 116: <span class="ruby-keyword kw">else</span> <span class="ruby-identifier">lambda</span> { <span class="ruby-identifier">f</span>[<span class="ruby-operator">~</span><span class="ruby-identifier">foldl</span>(<span class="ruby-identifier">f</span>, <span class="ruby-identifier">a</span>, <span class="ruby-operator">~</span><span class="ruby-identifier">tail</span>(<span class="ruby-identifier">list</span>)), <span class="ruby-operator">~</span><span class="ruby-identifier">head</span>(<span class="ruby-identifier">list</span>)] }
810
- 117: <span class="ruby-keyword kw">end</span>
811
- 118: <span class="ruby-keyword kw">end</span>
812
- </pre>
813
- </div>
814
- </div>
815
- </div>
816
-
817
- <div id="method-M000028" class="method-detail">
818
- <a name="M000028"></a>
819
-
820
- <div class="method-heading">
821
- <a href="#M000028" class="method-signature">
822
- <span class="method-name">foldl1</span><span class="method-args">(f, list)</span>
823
- </a>
824
- </div>
825
-
826
- <div class="method-description">
827
- <table>
828
- <tr><td valign="top">foldl1 &#8212; :</td><td>(a -&gt; a -&gt; a) -&gt; [a] -&gt; a
829
-
830
- </td></tr>
831
- </table>
832
- <p><a class="source-toggle" href="#"
833
- onclick="toggleCode('M000028-source');return false;">[Source]</a></p>
834
- <div class="method-source-code" id="M000028-source">
835
- <pre>
836
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 127</span>
837
- 127: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">foldl1</span>(<span class="ruby-identifier">f</span>, <span class="ruby-identifier">list</span>)
838
- 128: <span class="ruby-identifier">foldl</span>(<span class="ruby-identifier">f</span>, <span class="ruby-operator">~</span><span class="ruby-identifier">head</span>(<span class="ruby-identifier">list</span>), <span class="ruby-operator">~</span><span class="ruby-identifier">tail</span>(<span class="ruby-identifier">list</span>))
839
- 129: <span class="ruby-keyword kw">end</span>
840
- </pre>
841
- </div>
842
- </div>
843
- </div>
844
-
845
- <div id="method-M000029" class="method-detail">
846
- <a name="M000029"></a>
847
-
848
- <div class="method-heading">
849
- <a href="#M000029" class="method-signature">
850
- <span class="method-name">foldl1_</span><span class="method-args">(list)</span>
851
- </a>
852
- </div>
853
-
854
- <div class="method-description">
855
- <table>
856
- <tr><td valign="top">foldl1&#8217; &#8212; :</td><td>(a -&gt; a -&gt; a) -&gt; [a] -&gt; a
857
-
858
- </td></tr>
859
- </table>
860
- <p><a class="source-toggle" href="#"
861
- onclick="toggleCode('M000029-source');return false;">[Source]</a></p>
862
- <div class="method-source-code" id="M000029-source">
863
- <pre>
864
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 132</span>
865
- 132: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">foldl1_</span>(<span class="ruby-identifier">list</span>)
866
- 133: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'foldl1_' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
867
- 134: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
868
- 135: <span class="ruby-keyword kw">end</span>
869
- </pre>
870
- </div>
871
- </div>
872
- </div>
873
-
874
- <div id="method-M000027" class="method-detail">
875
- <a name="M000027"></a>
876
-
877
- <div class="method-heading">
878
- <a href="#M000027" class="method-signature">
879
- <span class="method-name">foldl_</span><span class="method-args">(list)</span>
880
- </a>
881
- </div>
882
-
883
- <div class="method-description">
884
- <table>
885
- <tr><td valign="top">foldl&#8217; &#8212; :</td><td>(a -&gt; b -&gt; a) -&gt; a -&gt; [b] -&gt; a
886
-
887
- </td></tr>
888
- </table>
889
- <p><a class="source-toggle" href="#"
890
- onclick="toggleCode('M000027-source');return false;">[Source]</a></p>
891
- <div class="method-source-code" id="M000027-source">
892
- <pre>
893
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 121</span>
894
- 121: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">foldl_</span>(<span class="ruby-identifier">list</span>)
895
- 122: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'foldl_' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
896
- 123: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
897
- 124: <span class="ruby-keyword kw">end</span>
898
- </pre>
899
- </div>
900
- </div>
901
- </div>
902
-
903
- <div id="method-M000030" class="method-detail">
904
- <a name="M000030"></a>
905
-
906
- <div class="method-heading">
907
- <a href="#M000030" class="method-signature">
908
- <span class="method-name">foldr</span><span class="method-args">(f, s, list)</span>
909
- </a>
910
- </div>
911
-
912
- <div class="method-description">
913
- <table>
914
- <tr><td valign="top">foldr &#8212; :</td><td>(a -&gt; b -&gt; b) -&gt; b -&gt; [a] -&gt; b
915
-
916
- </td></tr>
917
- </table>
918
- <p><a class="source-toggle" href="#"
919
- onclick="toggleCode('M000030-source');return false;">[Source]</a></p>
920
- <div class="method-source-code" id="M000030-source">
921
- <pre>
922
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 138</span>
923
- 138: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">foldr</span>(<span class="ruby-identifier">f</span>, <span class="ruby-identifier">s</span>, <span class="ruby-identifier">list</span>)
924
- 139: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">list</span>
925
- 140: <span class="ruby-keyword kw">when</span> [] <span class="ruby-operator">:</span> <span class="ruby-identifier">lambda</span> { <span class="ruby-identifier">s</span> }
926
- 141: <span class="ruby-keyword kw">else</span> <span class="ruby-identifier">lambda</span> { <span class="ruby-identifier">f</span>[<span class="ruby-operator">~</span><span class="ruby-identifier">head</span>(<span class="ruby-identifier">list</span>), <span class="ruby-operator">~</span><span class="ruby-identifier">foldr</span>(<span class="ruby-identifier">f</span>, <span class="ruby-identifier">s</span>, <span class="ruby-operator">~</span><span class="ruby-identifier">tail</span>(<span class="ruby-identifier">list</span>))] }
927
- 142: <span class="ruby-keyword kw">end</span>
928
- 143: <span class="ruby-keyword kw">end</span>
929
- </pre>
930
- </div>
931
- </div>
932
- </div>
933
-
934
- <div id="method-M000031" class="method-detail">
935
- <a name="M000031"></a>
936
-
937
- <div class="method-heading">
938
- <a href="#M000031" class="method-signature">
939
- <span class="method-name">foldr1</span><span class="method-args">(f, list)</span>
940
- </a>
941
- </div>
942
-
943
- <div class="method-description">
944
- <table>
945
- <tr><td valign="top">foldr1 &#8212; :</td><td>(a -&gt; a -&gt; a) -&gt; [a] -&gt; a
946
-
947
- </td></tr>
948
- </table>
949
- <p><a class="source-toggle" href="#"
950
- onclick="toggleCode('M000031-source');return false;">[Source]</a></p>
951
- <div class="method-source-code" id="M000031-source">
952
- <pre>
953
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 146</span>
954
- 146: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">foldr1</span>(<span class="ruby-identifier">f</span>, <span class="ruby-identifier">list</span>)
955
- 147: <span class="ruby-identifier">foldr</span>(<span class="ruby-identifier">f</span>, <span class="ruby-operator">~</span><span class="ruby-identifier">head</span>(<span class="ruby-identifier">list</span>), <span class="ruby-operator">~</span><span class="ruby-identifier">tail</span>(<span class="ruby-identifier">list</span>))
956
- 148: <span class="ruby-keyword kw">end</span>
957
- </pre>
958
- </div>
959
- </div>
960
- </div>
961
-
962
- <div id="method-M000065" class="method-detail">
963
- <a name="M000065"></a>
964
-
965
- <div class="method-heading">
966
- <a href="#M000065" class="method-signature">
967
- <span class="method-name">group</span><span class="method-args">(list)</span>
968
- </a>
969
- </div>
970
-
971
- <div class="method-description">
972
- <table>
973
- <tr><td valign="top">group &#8212; :</td><td>Eq a =&gt; [a] -&gt; [[a]]
974
-
975
- </td></tr>
976
- </table>
977
- <p><a class="source-toggle" href="#"
978
- onclick="toggleCode('M000065-source');return false;">[Source]</a></p>
979
- <div class="method-source-code" id="M000065-source">
980
- <pre>
981
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 339</span>
982
- 339: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">group</span>(<span class="ruby-identifier">list</span>)
983
- 340: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'group' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
984
- 341: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
985
- 342: <span class="ruby-keyword kw">end</span>
986
- </pre>
987
- </div>
988
- </div>
989
- </div>
990
-
991
- <div id="method-M000016" class="method-detail">
992
- <a name="M000016"></a>
993
-
994
- <div class="method-heading">
995
- <a href="#M000016" class="method-signature">
996
- <span class="method-name">head</span><span class="method-args">(list)</span>
997
- </a>
998
- </div>
999
-
1000
- <div class="method-description">
1001
- <table>
1002
- <tr><td valign="top">head &#8212; :</td><td>[a] -&gt; a
1003
-
1004
- </td></tr>
1005
- </table>
1006
- <p><a class="source-toggle" href="#"
1007
- onclick="toggleCode('M000016-source');return false;">[Source]</a></p>
1008
- <div class="method-source-code" id="M000016-source">
1009
- <pre>
1010
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 36</span>
1011
- 36: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">head</span>(<span class="ruby-identifier">list</span>)
1012
- 37: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">list</span>
1013
- 38: <span class="ruby-keyword kw">when</span> [] <span class="ruby-operator">:</span> <span class="ruby-identifier">empty_list_error</span>
1014
- 39: <span class="ruby-keyword kw">else</span> <span class="ruby-identifier">lambda</span> { <span class="ruby-identifier">list</span>[<span class="ruby-value">0</span>] }
1015
- 40: <span class="ruby-keyword kw">end</span>
1016
- 41: <span class="ruby-keyword kw">end</span>
1017
- </pre>
1018
- </div>
1019
- </div>
1020
- </div>
1021
-
1022
- <div id="method-M000019" class="method-detail">
1023
- <a name="M000019"></a>
1024
-
1025
- <div class="method-heading">
1026
- <a href="#M000019" class="method-signature">
1027
- <span class="method-name">init</span><span class="method-args">(list)</span>
1028
- </a>
1029
- </div>
1030
-
1031
- <div class="method-description">
1032
- <table>
1033
- <tr><td valign="top">init &#8212; :</td><td>[a] -&gt; [a]
1034
-
1035
- </td></tr>
1036
- </table>
1037
- <p><a class="source-toggle" href="#"
1038
- onclick="toggleCode('M000019-source');return false;">[Source]</a></p>
1039
- <div class="method-source-code" id="M000019-source">
1040
- <pre>
1041
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 61</span>
1042
- 61: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">init</span>(<span class="ruby-identifier">list</span>)
1043
- 62: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">list</span>
1044
- 63: <span class="ruby-keyword kw">when</span> [] <span class="ruby-operator">:</span> <span class="ruby-identifier">empty_list_error</span>
1045
- 64: <span class="ruby-keyword kw">when</span> [<span class="ruby-identifier">list</span>[<span class="ruby-value">0</span>]] <span class="ruby-operator">:</span> <span class="ruby-identifier">lambda</span> { [] }
1046
- 65: <span class="ruby-keyword kw">else</span> <span class="ruby-identifier">lambda</span> { [<span class="ruby-operator">~</span><span class="ruby-identifier">head</span>(<span class="ruby-identifier">list</span>)]<span class="ruby-operator">+</span><span class="ruby-operator">~</span><span class="ruby-identifier">init</span>(<span class="ruby-operator">~</span><span class="ruby-identifier">tail</span>(<span class="ruby-identifier">list</span>)) }
1047
- 66: <span class="ruby-keyword kw">end</span>
1048
- 67: <span class="ruby-keyword kw">end</span>
1049
- </pre>
1050
- </div>
1051
- </div>
1052
- </div>
1053
-
1054
- <div id="method-M000066" class="method-detail">
1055
- <a name="M000066"></a>
1056
-
1057
- <div class="method-heading">
1058
- <a href="#M000066" class="method-signature">
1059
- <span class="method-name">inits</span><span class="method-args">(list)</span>
1060
- </a>
1061
- </div>
1062
-
1063
- <div class="method-description">
1064
- <table>
1065
- <tr><td valign="top">inits &#8212; :</td><td>[a] -&gt; [[a]]
1066
-
1067
- </td></tr>
1068
- </table>
1069
- <p><a class="source-toggle" href="#"
1070
- onclick="toggleCode('M000066-source');return false;">[Source]</a></p>
1071
- <div class="method-source-code" id="M000066-source">
1072
- <pre>
1073
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 345</span>
1074
- 345: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">inits</span>(<span class="ruby-identifier">list</span>)
1075
- 346: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'inits' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
1076
- 347: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
1077
- 348: <span class="ruby-keyword kw">end</span>
1078
- </pre>
1079
- </div>
1080
- </div>
1081
- </div>
1082
-
1083
- <div id="method-M000108" class="method-detail">
1084
- <a name="M000108"></a>
1085
-
1086
- <div class="method-heading">
1087
- <a href="#M000108" class="method-signature">
1088
- <span class="method-name">insert</span><span class="method-args">(o, list)</span>
1089
- </a>
1090
- </div>
1091
-
1092
- <div class="method-description">
1093
- <table>
1094
- <tr><td valign="top">insert &#8212; :</td><td>(Ord a) =&gt; a -&gt; [a] -&gt; [a]
1095
-
1096
- </td></tr>
1097
- </table>
1098
- <p><a class="source-toggle" href="#"
1099
- onclick="toggleCode('M000108-source');return false;">[Source]</a></p>
1100
- <div class="method-source-code" id="M000108-source">
1101
- <pre>
1102
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 581</span>
1103
- 581: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">insert</span>(<span class="ruby-identifier">o</span>, <span class="ruby-identifier">list</span>)
1104
- 582: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'insert' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
1105
- 583: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
1106
- 584: <span class="ruby-keyword kw">end</span>
1107
- </pre>
1108
- </div>
1109
- </div>
1110
- </div>
1111
-
1112
- <div id="method-M000106" class="method-detail">
1113
- <a name="M000106"></a>
1114
-
1115
- <div class="method-heading">
1116
- <a href="#M000106" class="method-signature">
1117
- <span class="method-name">intersect</span><span class="method-args">(list)</span>
1118
- </a>
1119
- </div>
1120
-
1121
- <div class="method-description">
1122
- <table>
1123
- <tr><td valign="top">intersect &#8212; :</td><td>(Eq a) =&gt; [a] -&gt; [a] -&gt; [a]
1124
-
1125
- </td></tr>
1126
- </table>
1127
- <p><a class="source-toggle" href="#"
1128
- onclick="toggleCode('M000106-source');return false;">[Source]</a></p>
1129
- <div class="method-source-code" id="M000106-source">
1130
- <pre>
1131
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 567</span>
1132
- 567: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">intersect</span>(<span class="ruby-identifier">list</span>)
1133
- 568: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'intersect' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
1134
- 569: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
1135
- 570: <span class="ruby-keyword kw">end</span>
1136
- </pre>
1137
- </div>
1138
- </div>
1139
- </div>
1140
-
1141
- <div id="method-M000024" class="method-detail">
1142
- <a name="M000024"></a>
1143
-
1144
- <div class="method-heading">
1145
- <a href="#M000024" class="method-signature">
1146
- <span class="method-name">intersperse</span><span class="method-args">(list)</span>
1147
- </a>
1148
- </div>
1149
-
1150
- <div class="method-description">
1151
- <table>
1152
- <tr><td valign="top">intersperse &#8212; :</td><td>a -&gt; [a] -&gt; [a]
1153
-
1154
- </td></tr>
1155
- </table>
1156
- <p><a class="source-toggle" href="#"
1157
- onclick="toggleCode('M000024-source');return false;">[Source]</a></p>
1158
- <div class="method-source-code" id="M000024-source">
1159
- <pre>
1160
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 99</span>
1161
- 99: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">intersperse</span>(<span class="ruby-identifier">list</span>)
1162
- 100: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'intersperse' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
1163
- 101: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
1164
- 102: <span class="ruby-keyword kw">end</span>
1165
- </pre>
1166
- </div>
1167
- </div>
1168
- </div>
1169
-
1170
- <div id="method-M000069" class="method-detail">
1171
- <a name="M000069"></a>
1172
-
1173
- <div class="method-heading">
1174
- <span class="method-name">isPrefixOf</span><span class="method-args">(list)</span>
1175
- </div>
1176
-
1177
- <div class="method-description">
1178
- <p>
1179
- Alias for <a href="List.html#M000068">is_prefix_of</a>
1180
- </p>
1181
- </div>
1182
- </div>
1183
-
1184
- <div id="method-M000071" class="method-detail">
1185
- <a name="M000071"></a>
1186
-
1187
- <div class="method-heading">
1188
- <span class="method-name">isSuffixOf</span><span class="method-args">(list)</span>
1189
- </div>
1190
-
1191
- <div class="method-description">
1192
- <p>
1193
- Alias for <a href="List.html#M000070">is_suffix_of</a>
1194
- </p>
1195
- </div>
1196
- </div>
1197
-
1198
- <div id="method-M000068" class="method-detail">
1199
- <a name="M000068"></a>
1200
-
1201
- <div class="method-heading">
1202
- <a href="#M000068" class="method-signature">
1203
- <span class="method-name">is_prefix_of</span><span class="method-args">(list)</span>
1204
- </a>
1205
- </div>
1206
-
1207
- <div class="method-description">
1208
- <table>
1209
- <tr><td valign="top">isPrefixOf &#8212; :</td><td>(Eq a) =&gt; [a] -&gt; [a] -&gt; Bool
1210
-
1211
- </td></tr>
1212
- </table>
1213
- <p><a class="source-toggle" href="#"
1214
- onclick="toggleCode('M000068-source');return false;">[Source]</a></p>
1215
- <div class="method-source-code" id="M000068-source">
1216
- <pre>
1217
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 359</span>
1218
- 359: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">is_prefix_of</span>(<span class="ruby-identifier">list</span>)
1219
- 360: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'is_prefix_of' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
1220
- 361: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
1221
- 362: <span class="ruby-keyword kw">end</span>
1222
- </pre>
1223
- </div>
1224
- </div>
1225
- </div>
1226
-
1227
- <div id="method-M000070" class="method-detail">
1228
- <a name="M000070"></a>
1229
-
1230
- <div class="method-heading">
1231
- <a href="#M000070" class="method-signature">
1232
- <span class="method-name">is_suffix_of</span><span class="method-args">(list)</span>
1233
- </a>
1234
- </div>
1235
-
1236
- <div class="method-description">
1237
- <table>
1238
- <tr><td valign="top">isSuffixOf &#8212; :</td><td>(Eq a) =&gt; [a] -&gt; [a] -&gt; Bool
1239
-
1240
- </td></tr>
1241
- </table>
1242
- <p><a class="source-toggle" href="#"
1243
- onclick="toggleCode('M000070-source');return false;">[Source]</a></p>
1244
- <div class="method-source-code" id="M000070-source">
1245
- <pre>
1246
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 367</span>
1247
- 367: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">is_suffix_of</span>(<span class="ruby-identifier">list</span>)
1248
- 368: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'is_suffix_of' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
1249
- 369: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
1250
- 370: <span class="ruby-keyword kw">end</span>
1251
- </pre>
1252
- </div>
1253
- </div>
1254
- </div>
1255
-
1256
- <div id="method-M000051" class="method-detail">
1257
- <a name="M000051"></a>
1258
-
1259
- <div class="method-heading">
1260
- <a href="#M000051" class="method-signature">
1261
- <span class="method-name">iterate</span><span class="method-args">(list)</span>
1262
- </a>
1263
- </div>
1264
-
1265
- <div class="method-description">
1266
- <table>
1267
- <tr><td valign="top">iterate &#8212; :</td><td>(a -&gt; a) -&gt; a -&gt; [a]
1268
-
1269
- </td></tr>
1270
- </table>
1271
- <p><a class="source-toggle" href="#"
1272
- onclick="toggleCode('M000051-source');return false;">[Source]</a></p>
1273
- <div class="method-source-code" id="M000051-source">
1274
- <pre>
1275
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 257</span>
1276
- 257: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">iterate</span>(<span class="ruby-identifier">list</span>)
1277
- 258: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'iterate' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
1278
- 259: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
1279
- 260: <span class="ruby-keyword kw">end</span>
1280
- </pre>
1281
- </div>
1282
- </div>
1283
- </div>
1284
-
1285
- <div id="method-M000018" class="method-detail">
1286
- <a name="M000018"></a>
1287
-
1288
- <div class="method-heading">
1289
- <a href="#M000018" class="method-signature">
1290
- <span class="method-name">last</span><span class="method-args">(list)</span>
1291
- </a>
1292
- </div>
1293
-
1294
- <div class="method-description">
1295
- <table>
1296
- <tr><td valign="top">last &#8212; :</td><td>[a] -&gt; a
1297
-
1298
- </td></tr>
1299
- </table>
1300
- <p><a class="source-toggle" href="#"
1301
- onclick="toggleCode('M000018-source');return false;">[Source]</a></p>
1302
- <div class="method-source-code" id="M000018-source">
1303
- <pre>
1304
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 52</span>
1305
- 52: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">last</span>(<span class="ruby-identifier">list</span>)
1306
- 53: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">list</span>
1307
- 54: <span class="ruby-keyword kw">when</span> [] <span class="ruby-operator">:</span> <span class="ruby-identifier">empty_list_error</span>
1308
- 55: <span class="ruby-keyword kw">when</span> [<span class="ruby-identifier">list</span>[<span class="ruby-value">0</span>]] <span class="ruby-operator">:</span> <span class="ruby-identifier">lambda</span> { <span class="ruby-identifier">list</span>[<span class="ruby-value">0</span>] }
1309
- 56: <span class="ruby-keyword kw">else</span> <span class="ruby-identifier">last</span>(<span class="ruby-operator">~</span><span class="ruby-identifier">tail</span>(<span class="ruby-identifier">list</span>))
1310
- 57: <span class="ruby-keyword kw">end</span>
1311
- 58: <span class="ruby-keyword kw">end</span>
1312
- </pre>
1313
- </div>
1314
- </div>
1315
- </div>
1316
-
1317
- <div id="method-M000021" class="method-detail">
1318
- <a name="M000021"></a>
1319
-
1320
- <div class="method-heading">
1321
- <a href="#M000021" class="method-signature">
1322
- <span class="method-name">length</span><span class="method-args">(list)</span>
1323
- </a>
1324
- </div>
1325
-
1326
- <div class="method-description">
1327
- <table>
1328
- <tr><td valign="top">length &#8212; :</td><td>[a] -&gt; Int
1329
-
1330
- </td></tr>
1331
- </table>
1332
- <p><a class="source-toggle" href="#"
1333
- onclick="toggleCode('M000021-source');return false;">[Source]</a></p>
1334
- <div class="method-source-code" id="M000021-source">
1335
- <pre>
1336
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 75</span>
1337
- 75: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">length</span>(<span class="ruby-identifier">list</span>)
1338
- 76: <span class="ruby-identifier">lambda</span> { <span class="ruby-identifier">list</span>.<span class="ruby-identifier">length</span> }
1339
- 77: <span class="ruby-keyword kw">end</span>
1340
- </pre>
1341
- </div>
1342
- </div>
1343
- </div>
1344
-
1345
- <div id="method-M000099" class="method-detail">
1346
- <a name="M000099"></a>
1347
-
1348
- <div class="method-heading">
1349
- <a href="#M000099" class="method-signature">
1350
- <span class="method-name">lines</span><span class="method-args">(list)</span>
1351
- </a>
1352
- </div>
1353
-
1354
- <div class="method-description">
1355
- <table>
1356
- <tr><td valign="top">lines &#8212; :</td><td>String -&gt; [String]
1357
-
1358
- </td></tr>
1359
- </table>
1360
- <p><a class="source-toggle" href="#"
1361
- onclick="toggleCode('M000099-source');return false;">[Source]</a></p>
1362
- <div class="method-source-code" id="M000099-source">
1363
- <pre>
1364
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 523</span>
1365
- 523: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">lines</span>(<span class="ruby-identifier">list</span>)
1366
- 524: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'lines' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
1367
- 525: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
1368
- 526: <span class="ruby-keyword kw">end</span>
1369
- </pre>
1370
- </div>
1371
- </div>
1372
- </div>
1373
-
1374
- <div id="method-M000075" class="method-detail">
1375
- <a name="M000075"></a>
1376
-
1377
- <div class="method-heading">
1378
- <a href="#M000075" class="method-signature">
1379
- <span class="method-name">lookup</span><span class="method-args">(list)</span>
1380
- </a>
1381
- </div>
1382
-
1383
- <div class="method-description">
1384
- <table>
1385
- <tr><td valign="top">lookup &#8212; :</td><td>(Eq a) =&gt; a -&gt; [(a,b)] -&gt; Maybe b
1386
-
1387
- </td></tr>
1388
- </table>
1389
- <p><a class="source-toggle" href="#"
1390
- onclick="toggleCode('M000075-source');return false;">[Source]</a></p>
1391
- <div class="method-source-code" id="M000075-source">
1392
- <pre>
1393
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 393</span>
1394
- 393: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">lookup</span>(<span class="ruby-identifier">list</span>)
1395
- 394: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'lookup' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
1396
- 395: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
1397
- 396: <span class="ruby-keyword kw">end</span>
1398
- </pre>
1399
- </div>
1400
- </div>
1401
- </div>
1402
-
1403
- <div id="method-M000022" class="method-detail">
1404
- <a name="M000022"></a>
1405
-
1406
- <div class="method-heading">
1407
- <a href="#M000022" class="method-signature">
1408
- <span class="method-name">map</span><span class="method-args">(f, list)</span>
1409
- </a>
1410
- </div>
1411
-
1412
- <div class="method-description">
1413
- <table>
1414
- <tr><td valign="top">map &#8212; :</td><td>(a -&gt; b) -&gt; [a] -&gt; [b]
1415
-
1416
- </td></tr>
1417
- </table>
1418
- <p><a class="source-toggle" href="#"
1419
- onclick="toggleCode('M000022-source');return false;">[Source]</a></p>
1420
- <div class="method-source-code" id="M000022-source">
1421
- <pre>
1422
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 80</span>
1423
- 80: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">map</span>(<span class="ruby-identifier">f</span>, <span class="ruby-identifier">list</span>)
1424
- 81: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">list</span>
1425
- 82: <span class="ruby-keyword kw">when</span> [] <span class="ruby-operator">:</span> <span class="ruby-identifier">lambda</span>{ [] }
1426
- 83: <span class="ruby-keyword kw">else</span> <span class="ruby-identifier">lambda</span>{ [ <span class="ruby-identifier">f</span>[<span class="ruby-operator">~</span><span class="ruby-identifier">head</span>(<span class="ruby-identifier">list</span>)] ] <span class="ruby-operator">+</span> <span class="ruby-operator">~</span><span class="ruby-identifier">map</span>(<span class="ruby-identifier">f</span>, <span class="ruby-operator">~</span><span class="ruby-identifier">tail</span>(<span class="ruby-identifier">list</span>)) }
1427
- 84: <span class="ruby-keyword kw">end</span>
1428
- 85: <span class="ruby-keyword kw">end</span>
1429
- </pre>
1430
- </div>
1431
- </div>
1432
- </div>
1433
-
1434
- <div id="method-M000048" class="method-detail">
1435
- <a name="M000048"></a>
1436
-
1437
- <div class="method-heading">
1438
- <span class="method-name">mapAccumL</span><span class="method-args">(list)</span>
1439
- </div>
1440
-
1441
- <div class="method-description">
1442
- <p>
1443
- Alias for <a href="List.html#M000047">map_accum_l</a>
1444
- </p>
1445
- </div>
1446
- </div>
1447
-
1448
- <div id="method-M000050" class="method-detail">
1449
- <a name="M000050"></a>
1450
-
1451
- <div class="method-heading">
1452
- <span class="method-name">mapAccumR</span><span class="method-args">(list)</span>
1453
- </div>
1454
-
1455
- <div class="method-description">
1456
- <p>
1457
- Alias for <a href="List.html#M000049">map_accum_r</a>
1458
- </p>
1459
- </div>
1460
- </div>
1461
-
1462
- <div id="method-M000047" class="method-detail">
1463
- <a name="M000047"></a>
1464
-
1465
- <div class="method-heading">
1466
- <a href="#M000047" class="method-signature">
1467
- <span class="method-name">map_accum_l</span><span class="method-args">(list)</span>
1468
- </a>
1469
- </div>
1470
-
1471
- <div class="method-description">
1472
- <table>
1473
- <tr><td valign="top">mapAccumL &#8212; :</td><td>(a -&gt; b -&gt; (a,c)) -&gt; a -&gt; [b] -&gt; (a,[c])
1474
-
1475
- </td></tr>
1476
- </table>
1477
- <p><a class="source-toggle" href="#"
1478
- onclick="toggleCode('M000047-source');return false;">[Source]</a></p>
1479
- <div class="method-source-code" id="M000047-source">
1480
- <pre>
1481
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 239</span>
1482
- 239: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">map_accum_l</span>(<span class="ruby-identifier">list</span>)
1483
- 240: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'map_accum_l' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
1484
- 241: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
1485
- 242: <span class="ruby-keyword kw">end</span>
1486
- </pre>
1487
- </div>
1488
- </div>
1489
- </div>
1490
-
1491
- <div id="method-M000049" class="method-detail">
1492
- <a name="M000049"></a>
1493
-
1494
- <div class="method-heading">
1495
- <a href="#M000049" class="method-signature">
1496
- <span class="method-name">map_accum_r</span><span class="method-args">(list)</span>
1497
- </a>
1498
- </div>
1499
-
1500
- <div class="method-description">
1501
- <table>
1502
- <tr><td valign="top">mapAccumR &#8212; :</td><td>(a -&gt; b -&gt; (a,c)) -&gt; a -&gt; [b] -&gt; (a,[c])
1503
-
1504
- </td></tr>
1505
- </table>
1506
- <p><a class="source-toggle" href="#"
1507
- onclick="toggleCode('M000049-source');return false;">[Source]</a></p>
1508
- <div class="method-source-code" id="M000049-source">
1509
- <pre>
1510
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 247</span>
1511
- 247: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">map_accum_r</span>(<span class="ruby-identifier">list</span>)
1512
- 248: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'map_accum_r' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
1513
- 249: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
1514
- 250: <span class="ruby-keyword kw">end</span>
1515
- </pre>
1516
- </div>
1517
- </div>
1518
- </div>
1519
-
1520
- <div id="method-M000041" class="method-detail">
1521
- <a name="M000041"></a>
1522
-
1523
- <div class="method-heading">
1524
- <a href="#M000041" class="method-signature">
1525
- <span class="method-name">maximum</span><span class="method-args">(list)</span>
1526
- </a>
1527
- </div>
1528
-
1529
- <div class="method-description">
1530
- <table>
1531
- <tr><td valign="top">maximum &#8212; :</td><td>(Ord a) =&gt; [a] -&gt; a
1532
-
1533
- </td></tr>
1534
- </table>
1535
- <p><a class="source-toggle" href="#"
1536
- onclick="toggleCode('M000041-source');return false;">[Source]</a></p>
1537
- <div class="method-source-code" id="M000041-source">
1538
- <pre>
1539
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 197</span>
1540
- 197: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">maximum</span>(<span class="ruby-identifier">list</span>)
1541
- 198: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'maximum' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
1542
- 199: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
1543
- 200: <span class="ruby-keyword kw">end</span>
1544
- </pre>
1545
- </div>
1546
- </div>
1547
- </div>
1548
-
1549
- <div id="method-M000042" class="method-detail">
1550
- <a name="M000042"></a>
1551
-
1552
- <div class="method-heading">
1553
- <a href="#M000042" class="method-signature">
1554
- <span class="method-name">minimum</span><span class="method-args">(list)</span>
1555
- </a>
1556
- </div>
1557
-
1558
- <div class="method-description">
1559
- <table>
1560
- <tr><td valign="top">minimum &#8212; :</td><td>(Ord a) =&gt; [a] -&gt; a
1561
-
1562
- </td></tr>
1563
- </table>
1564
- <p><a class="source-toggle" href="#"
1565
- onclick="toggleCode('M000042-source');return false;">[Source]</a></p>
1566
- <div class="method-source-code" id="M000042-source">
1567
- <pre>
1568
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 203</span>
1569
- 203: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">minimum</span>(<span class="ruby-identifier">list</span>)
1570
- 204: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'minimum' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
1571
- 205: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
1572
- 206: <span class="ruby-keyword kw">end</span>
1573
- </pre>
1574
- </div>
1575
- </div>
1576
- </div>
1577
-
1578
- <div id="method-M000074" class="method-detail">
1579
- <a name="M000074"></a>
1580
-
1581
- <div class="method-heading">
1582
- <span class="method-name">notElem</span><span class="method-args">(list)</span>
1583
- </div>
1584
-
1585
- <div class="method-description">
1586
- <p>
1587
- Alias for <a href="List.html#M000073">not_elem</a>
1588
- </p>
1589
- </div>
1590
- </div>
1591
-
1592
- <div id="method-M000073" class="method-detail">
1593
- <a name="M000073"></a>
1594
-
1595
- <div class="method-heading">
1596
- <a href="#M000073" class="method-signature">
1597
- <span class="method-name">not_elem</span><span class="method-args">(list)</span>
1598
- </a>
1599
- </div>
1600
-
1601
- <div class="method-description">
1602
- <table>
1603
- <tr><td valign="top">notElem &#8212; :</td><td>a -&gt; [a] -&gt; Bool
1604
-
1605
- </td></tr>
1606
- </table>
1607
- <p><a class="source-toggle" href="#"
1608
- onclick="toggleCode('M000073-source');return false;">[Source]</a></p>
1609
- <div class="method-source-code" id="M000073-source">
1610
- <pre>
1611
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 385</span>
1612
- 385: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">not_elem</span>(<span class="ruby-identifier">list</span>)
1613
- 386: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'not_elem' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
1614
- 387: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
1615
- 388: <span class="ruby-keyword kw">end</span>
1616
- </pre>
1617
- </div>
1618
- </div>
1619
- </div>
1620
-
1621
- <div id="method-M000103" class="method-detail">
1622
- <a name="M000103"></a>
1623
-
1624
- <div class="method-heading">
1625
- <a href="#M000103" class="method-signature">
1626
- <span class="method-name">nub</span><span class="method-args">(list)</span>
1627
- </a>
1628
- </div>
1629
-
1630
- <div class="method-description">
1631
- <table>
1632
- <tr><td valign="top">nub &#8212; :</td><td>(Eq a) =&gt; [a] -&gt; [a]
1633
-
1634
- </td></tr>
1635
- </table>
1636
- <p><a class="source-toggle" href="#"
1637
- onclick="toggleCode('M000103-source');return false;">[Source]</a></p>
1638
- <div class="method-source-code" id="M000103-source">
1639
- <pre>
1640
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 549</span>
1641
- 549: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">nub</span>(<span class="ruby-identifier">list</span>)
1642
- 550: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'nub' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
1643
- 551: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
1644
- 552: <span class="ruby-keyword kw">end</span>
1645
- </pre>
1646
- </div>
1647
- </div>
1648
- </div>
1649
-
1650
- <div id="method-M000020" class="method-detail">
1651
- <a name="M000020"></a>
1652
-
1653
- <div class="method-heading">
1654
- <a href="#M000020" class="method-signature">
1655
- <span class="method-name">null</span><span class="method-args">(list)</span>
1656
- </a>
1657
- </div>
1658
-
1659
- <div class="method-description">
1660
- <table>
1661
- <tr><td valign="top">null &#8212; :</td><td>[a] -&gt; Bool
1662
-
1663
- </td></tr>
1664
- </table>
1665
- <p><a class="source-toggle" href="#"
1666
- onclick="toggleCode('M000020-source');return false;">[Source]</a></p>
1667
- <div class="method-source-code" id="M000020-source">
1668
- <pre>
1669
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 70</span>
1670
- 70: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">null</span>(<span class="ruby-identifier">list</span>)
1671
- 71: <span class="ruby-identifier">lambda</span> { <span class="ruby-identifier">list</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span> }
1672
- 72: <span class="ruby-keyword kw">end</span>
1673
- </pre>
1674
- </div>
1675
- </div>
1676
- </div>
1677
-
1678
- <div id="method-M000036" class="method-detail">
1679
- <a name="M000036"></a>
1680
-
1681
- <div class="method-heading">
1682
- <a href="#M000036" class="method-signature">
1683
- <span class="method-name">or_</span><span class="method-args">(list)</span>
1684
- </a>
1685
- </div>
1686
-
1687
- <div class="method-description">
1688
- <table>
1689
- <tr><td valign="top">or &#8212; :</td><td>[Bool] -&gt; Bool
1690
-
1691
- </td></tr>
1692
- </table>
1693
- <p><a class="source-toggle" href="#"
1694
- onclick="toggleCode('M000036-source');return false;">[Source]</a></p>
1695
- <div class="method-source-code" id="M000036-source">
1696
- <pre>
1697
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 170</span>
1698
- 170: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">or_</span>(<span class="ruby-identifier">list</span>)
1699
- 171: <span class="ruby-identifier">foldr</span>(<span class="ruby-identifier">lambda</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">x</span>,<span class="ruby-identifier">y</span><span class="ruby-operator">|</span> (<span class="ruby-identifier">x</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">y</span>)}, <span class="ruby-keyword kw">false</span>, <span class="ruby-identifier">list</span>)
1700
- 172: <span class="ruby-keyword kw">end</span>
1701
- </pre>
1702
- </div>
1703
- </div>
1704
- </div>
1705
-
1706
- <div id="method-M000078" class="method-detail">
1707
- <a name="M000078"></a>
1708
-
1709
- <div class="method-heading">
1710
- <a href="#M000078" class="method-signature">
1711
- <span class="method-name">partition</span><span class="method-args">(p, list)</span>
1712
- </a>
1713
- </div>
1714
-
1715
- <div class="method-description">
1716
- <table>
1717
- <tr><td valign="top">partition &#8212; :</td><td>(a -&gt; Bool) -&gt; [a] -&gt; ([a], [a])
1718
-
1719
- </td></tr>
1720
- </table>
1721
- <p><a class="source-toggle" href="#"
1722
- onclick="toggleCode('M000078-source');return false;">[Source]</a></p>
1723
- <div class="method-source-code" id="M000078-source">
1724
- <pre>
1725
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 413</span>
1726
- 413: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">partition</span>(<span class="ruby-identifier">p</span>, <span class="ruby-identifier">list</span>)
1727
- 414: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'partition' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
1728
- 415: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
1729
- 416: <span class="ruby-keyword kw">end</span>
1730
- </pre>
1731
- </div>
1732
- </div>
1733
- </div>
1734
-
1735
- <div id="method-M000040" class="method-detail">
1736
- <a name="M000040"></a>
1737
-
1738
- <div class="method-heading">
1739
- <a href="#M000040" class="method-signature">
1740
- <span class="method-name">product</span><span class="method-args">(list)</span>
1741
- </a>
1742
- </div>
1743
-
1744
- <div class="method-description">
1745
- <table>
1746
- <tr><td valign="top">product &#8212; :</td><td>(Num a) =&gt; [a] -&gt; a
1747
-
1748
- </td></tr>
1749
- </table>
1750
- <p><a class="source-toggle" href="#"
1751
- onclick="toggleCode('M000040-source');return false;">[Source]</a></p>
1752
- <div class="method-source-code" id="M000040-source">
1753
- <pre>
1754
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 191</span>
1755
- 191: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">product</span>(<span class="ruby-identifier">list</span>)
1756
- 192: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'product' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
1757
- 193: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
1758
- 194: <span class="ruby-keyword kw">end</span>
1759
- </pre>
1760
- </div>
1761
- </div>
1762
- </div>
1763
-
1764
- <div id="method-M000052" class="method-detail">
1765
- <a name="M000052"></a>
1766
-
1767
- <div class="method-heading">
1768
- <a href="#M000052" class="method-signature">
1769
- <span class="method-name">repeat</span><span class="method-args">(list)</span>
1770
- </a>
1771
- </div>
1772
-
1773
- <div class="method-description">
1774
- <table>
1775
- <tr><td valign="top">repeat &#8212; :</td><td>a -&gt; [a]
1776
-
1777
- </td></tr>
1778
- </table>
1779
- <p><a class="source-toggle" href="#"
1780
- onclick="toggleCode('M000052-source');return false;">[Source]</a></p>
1781
- <div class="method-source-code" id="M000052-source">
1782
- <pre>
1783
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 263</span>
1784
- 263: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">repeat</span>(<span class="ruby-identifier">list</span>)
1785
- 264: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'repeat' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
1786
- 265: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
1787
- 266: <span class="ruby-keyword kw">end</span>
1788
- </pre>
1789
- </div>
1790
- </div>
1791
- </div>
1792
-
1793
- <div id="method-M000053" class="method-detail">
1794
- <a name="M000053"></a>
1795
-
1796
- <div class="method-heading">
1797
- <a href="#M000053" class="method-signature">
1798
- <span class="method-name">replicate</span><span class="method-args">(list)</span>
1799
- </a>
1800
- </div>
1801
-
1802
- <div class="method-description">
1803
- <table>
1804
- <tr><td valign="top">replicate &#8212; :</td><td>Int -&gt; a -&gt; [a]
1805
-
1806
- </td></tr>
1807
- </table>
1808
- <p><a class="source-toggle" href="#"
1809
- onclick="toggleCode('M000053-source');return false;">[Source]</a></p>
1810
- <div class="method-source-code" id="M000053-source">
1811
- <pre>
1812
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 269</span>
1813
- 269: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">replicate</span>(<span class="ruby-identifier">list</span>)
1814
- 270: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'replicate' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
1815
- 271: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
1816
- 272: <span class="ruby-keyword kw">end</span>
1817
- </pre>
1818
- </div>
1819
- </div>
1820
- </div>
1821
-
1822
- <div id="method-M000023" class="method-detail">
1823
- <a name="M000023"></a>
1824
-
1825
- <div class="method-heading">
1826
- <a href="#M000023" class="method-signature">
1827
- <span class="method-name">reverse</span><span class="method-args">(list)</span>
1828
- </a>
1829
- </div>
1830
-
1831
- <div class="method-description">
1832
- <table>
1833
- <tr><td valign="top">, reverse &#8212; :</td><td>[a] -&gt; [a]
1834
-
1835
- </td></tr>
1836
- </table>
1837
- <p><a class="source-toggle" href="#"
1838
- onclick="toggleCode('M000023-source');return false;">[Source]</a></p>
1839
- <div class="method-source-code" id="M000023-source">
1840
- <pre>
1841
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 88</span>
1842
- 88: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">reverse</span>(<span class="ruby-identifier">list</span>)
1843
- 89: <span class="ruby-identifier">r</span> = <span class="ruby-identifier">proc</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">l</span>, <span class="ruby-identifier">a</span><span class="ruby-operator">|</span>
1844
- 90: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">l</span>
1845
- 91: <span class="ruby-keyword kw">when</span> [] <span class="ruby-operator">:</span> <span class="ruby-identifier">lambda</span> { <span class="ruby-identifier">a</span> }
1846
- 92: <span class="ruby-keyword kw">else</span> <span class="ruby-identifier">lambda</span> { <span class="ruby-operator">~</span><span class="ruby-identifier">r</span>[<span class="ruby-operator">~</span><span class="ruby-identifier">tail</span>(<span class="ruby-identifier">l</span>), [<span class="ruby-operator">~</span><span class="ruby-identifier">head</span>(<span class="ruby-identifier">l</span>)]<span class="ruby-operator">+</span><span class="ruby-identifier">a</span>] }
1847
- 93: <span class="ruby-keyword kw">end</span>
1848
- 94: }
1849
- 95: <span class="ruby-identifier">r</span>[<span class="ruby-identifier">list</span>, []]
1850
- 96: <span class="ruby-keyword kw">end</span>
1851
- </pre>
1852
- </div>
1853
- </div>
1854
- </div>
1855
-
1856
- <div id="method-M000043" class="method-detail">
1857
- <a name="M000043"></a>
1858
-
1859
- <div class="method-heading">
1860
- <a href="#M000043" class="method-signature">
1861
- <span class="method-name">scanl</span><span class="method-args">(f, s, list)</span>
1862
- </a>
1863
- </div>
1864
-
1865
- <div class="method-description">
1866
- <table>
1867
- <tr><td valign="top">scanl &#8212; :</td><td>(a -&gt; b -&gt; a) -&gt; a -&gt; [b] -&gt; [a]
1868
-
1869
- </td></tr>
1870
- </table>
1871
- <p><a class="source-toggle" href="#"
1872
- onclick="toggleCode('M000043-source');return false;">[Source]</a></p>
1873
- <div class="method-source-code" id="M000043-source">
1874
- <pre>
1875
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 213</span>
1876
- 213: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">scanl</span>(<span class="ruby-identifier">f</span>, <span class="ruby-identifier">s</span>, <span class="ruby-identifier">list</span>)
1877
- 214: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'scanl' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
1878
- 215: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
1879
- 216: <span class="ruby-keyword kw">end</span>
1880
- </pre>
1881
- </div>
1882
- </div>
1883
- </div>
1884
-
1885
- <div id="method-M000044" class="method-detail">
1886
- <a name="M000044"></a>
1887
-
1888
- <div class="method-heading">
1889
- <a href="#M000044" class="method-signature">
1890
- <span class="method-name">scanl1</span><span class="method-args">(f, list)</span>
1891
- </a>
1892
- </div>
1893
-
1894
- <div class="method-description">
1895
- <table>
1896
- <tr><td valign="top">scanl1 &#8212; :</td><td>(a -&gt; a -&gt; a) -&gt; [a] -&gt; [a]
1897
-
1898
- </td></tr>
1899
- </table>
1900
- <p><a class="source-toggle" href="#"
1901
- onclick="toggleCode('M000044-source');return false;">[Source]</a></p>
1902
- <div class="method-source-code" id="M000044-source">
1903
- <pre>
1904
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 219</span>
1905
- 219: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">scanl1</span>(<span class="ruby-identifier">f</span>, <span class="ruby-identifier">list</span>)
1906
- 220: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'scanl1' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
1907
- 221: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
1908
- 222: <span class="ruby-keyword kw">end</span>
1909
- </pre>
1910
- </div>
1911
- </div>
1912
- </div>
1913
-
1914
- <div id="method-M000045" class="method-detail">
1915
- <a name="M000045"></a>
1916
-
1917
- <div class="method-heading">
1918
- <a href="#M000045" class="method-signature">
1919
- <span class="method-name">scanr</span><span class="method-args">(f, s, list)</span>
1920
- </a>
1921
- </div>
1922
-
1923
- <div class="method-description">
1924
- <table>
1925
- <tr><td valign="top">scanr &#8212; :</td><td>(a -&gt; b -&gt; b) -&gt; b -&gt; [a] -&gt; [b]
1926
-
1927
- </td></tr>
1928
- </table>
1929
- <p><a class="source-toggle" href="#"
1930
- onclick="toggleCode('M000045-source');return false;">[Source]</a></p>
1931
- <div class="method-source-code" id="M000045-source">
1932
- <pre>
1933
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 225</span>
1934
- 225: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">scanr</span>(<span class="ruby-identifier">f</span>, <span class="ruby-identifier">s</span>, <span class="ruby-identifier">list</span>)
1935
- 226: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'scanr' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
1936
- 227: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
1937
- 228: <span class="ruby-keyword kw">end</span>
1938
- </pre>
1939
- </div>
1940
- </div>
1941
- </div>
1942
-
1943
- <div id="method-M000046" class="method-detail">
1944
- <a name="M000046"></a>
1945
-
1946
- <div class="method-heading">
1947
- <a href="#M000046" class="method-signature">
1948
- <span class="method-name">scanr1</span><span class="method-args">(f, list)</span>
1949
- </a>
1950
- </div>
1951
-
1952
- <div class="method-description">
1953
- <table>
1954
- <tr><td valign="top">scanr1 &#8212; :</td><td>(a -&gt; a -&gt; a) -&gt; [a] -&gt; [a]
1955
-
1956
- </td></tr>
1957
- </table>
1958
- <p><a class="source-toggle" href="#"
1959
- onclick="toggleCode('M000046-source');return false;">[Source]</a></p>
1960
- <div class="method-source-code" id="M000046-source">
1961
- <pre>
1962
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 231</span>
1963
- 231: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">scanr1</span>(<span class="ruby-identifier">f</span>, <span class="ruby-identifier">list</span>)
1964
- 232: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'scanr1' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
1965
- 233: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
1966
- 234: <span class="ruby-keyword kw">end</span>
1967
- </pre>
1968
- </div>
1969
- </div>
1970
- </div>
1971
-
1972
- <div id="method-M000107" class="method-detail">
1973
- <a name="M000107"></a>
1974
-
1975
- <div class="method-heading">
1976
- <a href="#M000107" class="method-signature">
1977
- <span class="method-name">sort</span><span class="method-args">(list)</span>
1978
- </a>
1979
- </div>
1980
-
1981
- <div class="method-description">
1982
- <table>
1983
- <tr><td valign="top">sort &#8212; :</td><td>(Ord a) =&gt; [a] -&gt; [a]
1984
-
1985
- </td></tr>
1986
- </table>
1987
- <p><a class="source-toggle" href="#"
1988
- onclick="toggleCode('M000107-source');return false;">[Source]</a></p>
1989
- <div class="method-source-code" id="M000107-source">
1990
- <pre>
1991
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 575</span>
1992
- 575: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">sort</span>(<span class="ruby-identifier">list</span>)
1993
- 576: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'sort' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
1994
- 577: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
1995
- 578: <span class="ruby-keyword kw">end</span>
1996
- </pre>
1997
- </div>
1998
- </div>
1999
- </div>
2000
-
2001
- <div id="method-M000063" class="method-detail">
2002
- <a name="M000063"></a>
2003
-
2004
- <div class="method-heading">
2005
- <a href="#M000063" class="method-signature">
2006
- <span class="method-name">span</span><span class="method-args">(p, list)</span>
2007
- </a>
2008
- </div>
2009
-
2010
- <div class="method-description">
2011
- <table>
2012
- <tr><td valign="top">span &#8212; :</td><td>(a -&gt; Bool) -&gt; [a] -&gt; ([a], [a])
2013
-
2014
- </td></tr>
2015
- </table>
2016
- <p><a class="source-toggle" href="#"
2017
- onclick="toggleCode('M000063-source');return false;">[Source]</a></p>
2018
- <div class="method-source-code" id="M000063-source">
2019
- <pre>
2020
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 328</span>
2021
- 328: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">span</span>(<span class="ruby-identifier">p</span>, <span class="ruby-identifier">list</span>)
2022
- 329: <span class="ruby-identifier">lambda</span> { [<span class="ruby-operator">~</span><span class="ruby-identifier">takeWhile</span>(<span class="ruby-identifier">p</span>, <span class="ruby-identifier">list</span>), <span class="ruby-operator">~</span><span class="ruby-identifier">dropWhile</span>(<span class="ruby-identifier">p</span>,<span class="ruby-identifier">list</span>)] }
2023
- 330: <span class="ruby-keyword kw">end</span>
2024
- </pre>
2025
- </div>
2026
- </div>
2027
- </div>
2028
-
2029
- <div id="method-M000058" class="method-detail">
2030
- <a name="M000058"></a>
2031
-
2032
- <div class="method-heading">
2033
- <a href="#M000058" class="method-signature">
2034
- <span class="method-name">split_at</span><span class="method-args">(n, list)</span>
2035
- </a>
2036
- </div>
2037
-
2038
- <div class="method-description">
2039
- <table>
2040
- <tr><td valign="top">splitAt &#8212; :</td><td>Int -&gt; [a] -&gt; ([a], [a])
2041
-
2042
- </td></tr>
2043
- </table>
2044
- <p><a class="source-toggle" href="#"
2045
- onclick="toggleCode('M000058-source');return false;">[Source]</a></p>
2046
- <div class="method-source-code" id="M000058-source">
2047
- <pre>
2048
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 303</span>
2049
- 303: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">split_at</span>(<span class="ruby-identifier">n</span>, <span class="ruby-identifier">list</span>)
2050
- 304: <span class="ruby-identifier">lambda</span> { [<span class="ruby-operator">~</span><span class="ruby-identifier">take</span>(<span class="ruby-identifier">n</span>, <span class="ruby-identifier">list</span>), <span class="ruby-operator">~</span><span class="ruby-identifier">drop</span>(<span class="ruby-identifier">n</span>, <span class="ruby-identifier">list</span>)] }
2051
- 305: <span class="ruby-keyword kw">end</span>
2052
- </pre>
2053
- </div>
2054
- </div>
2055
- </div>
2056
-
2057
- <div id="method-M000039" class="method-detail">
2058
- <a name="M000039"></a>
2059
-
2060
- <div class="method-heading">
2061
- <a href="#M000039" class="method-signature">
2062
- <span class="method-name">sum</span><span class="method-args">(list)</span>
2063
- </a>
2064
- </div>
2065
-
2066
- <div class="method-description">
2067
- <table>
2068
- <tr><td valign="top">sum &#8212; :</td><td>(Num a) =&gt; [a] -&gt; a
2069
-
2070
- </td></tr>
2071
- </table>
2072
- <p><a class="source-toggle" href="#"
2073
- onclick="toggleCode('M000039-source');return false;">[Source]</a></p>
2074
- <div class="method-source-code" id="M000039-source">
2075
- <pre>
2076
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 185</span>
2077
- 185: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">sum</span>(<span class="ruby-identifier">list</span>)
2078
- 186: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'sum' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
2079
- 187: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
2080
- 188: <span class="ruby-keyword kw">end</span>
2081
- </pre>
2082
- </div>
2083
- </div>
2084
- </div>
2085
-
2086
- <div id="method-M000017" class="method-detail">
2087
- <a name="M000017"></a>
2088
-
2089
- <div class="method-heading">
2090
- <a href="#M000017" class="method-signature">
2091
- <span class="method-name">tail</span><span class="method-args">(list)</span>
2092
- </a>
2093
- </div>
2094
-
2095
- <div class="method-description">
2096
- <table>
2097
- <tr><td valign="top">tail &#8212; :</td><td>[a] -&gt; [a]
2098
-
2099
- </td></tr>
2100
- </table>
2101
- <p><a class="source-toggle" href="#"
2102
- onclick="toggleCode('M000017-source');return false;">[Source]</a></p>
2103
- <div class="method-source-code" id="M000017-source">
2104
- <pre>
2105
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 44</span>
2106
- 44: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">tail</span>(<span class="ruby-identifier">list</span>)
2107
- 45: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">list</span>
2108
- 46: <span class="ruby-keyword kw">when</span> [] <span class="ruby-operator">:</span> <span class="ruby-identifier">empty_list_error</span>
2109
- 47: <span class="ruby-keyword kw">else</span> <span class="ruby-identifier">lambda</span> { <span class="ruby-identifier">list</span>[<span class="ruby-value">1</span><span class="ruby-operator">..</span><span class="ruby-value">-1</span>] }
2110
- 48: <span class="ruby-keyword kw">end</span>
2111
- 49: <span class="ruby-keyword kw">end</span>
2112
- </pre>
2113
- </div>
2114
- </div>
2115
- </div>
2116
-
2117
- <div id="method-M000067" class="method-detail">
2118
- <a name="M000067"></a>
2119
-
2120
- <div class="method-heading">
2121
- <a href="#M000067" class="method-signature">
2122
- <span class="method-name">tails</span><span class="method-args">(list)</span>
2123
- </a>
2124
- </div>
2125
-
2126
- <div class="method-description">
2127
- <table>
2128
- <tr><td valign="top">tails &#8212; :</td><td>[a] -&gt; [[a]]
2129
-
2130
- </td></tr>
2131
- </table>
2132
- <p><a class="source-toggle" href="#"
2133
- onclick="toggleCode('M000067-source');return false;">[Source]</a></p>
2134
- <div class="method-source-code" id="M000067-source">
2135
- <pre>
2136
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 351</span>
2137
- 351: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">tails</span>(<span class="ruby-identifier">list</span>)
2138
- 352: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'tails' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
2139
- 353: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
2140
- 354: <span class="ruby-keyword kw">end</span>
2141
- </pre>
2142
- </div>
2143
- </div>
2144
- </div>
2145
-
2146
- <div id="method-M000056" class="method-detail">
2147
- <a name="M000056"></a>
2148
-
2149
- <div class="method-heading">
2150
- <a href="#M000056" class="method-signature">
2151
- <span class="method-name">take</span><span class="method-args">(n, list)</span>
2152
- </a>
2153
- </div>
2154
-
2155
- <div class="method-description">
2156
- <table>
2157
- <tr><td valign="top">take &#8212; :</td><td>Int -&gt; [a] -&gt; [a]
2158
-
2159
- </td></tr>
2160
- </table>
2161
- <p><a class="source-toggle" href="#"
2162
- onclick="toggleCode('M000056-source');return false;">[Source]</a></p>
2163
- <div class="method-source-code" id="M000056-source">
2164
- <pre>
2165
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 293</span>
2166
- 293: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">take</span>(<span class="ruby-identifier">n</span>, <span class="ruby-identifier">list</span>)
2167
- 294: <span class="ruby-identifier">lambda</span> { <span class="ruby-identifier">list</span>[<span class="ruby-value">0</span><span class="ruby-operator">..</span>(<span class="ruby-identifier">n</span><span class="ruby-operator">-</span><span class="ruby-value">1</span>)] }
2168
- 295: <span class="ruby-keyword kw">end</span>
2169
- </pre>
2170
- </div>
2171
- </div>
2172
- </div>
2173
-
2174
- <div id="method-M000060" class="method-detail">
2175
- <a name="M000060"></a>
2176
-
2177
- <div class="method-heading">
2178
- <span class="method-name">takeWhile</span><span class="method-args">(p, list)</span>
2179
- </div>
2180
-
2181
- <div class="method-description">
2182
- <p>
2183
- Alias for <a href="List.html#M000059">take_while</a>
2184
- </p>
2185
- </div>
2186
- </div>
2187
-
2188
- <div id="method-M000059" class="method-detail">
2189
- <a name="M000059"></a>
2190
-
2191
- <div class="method-heading">
2192
- <a href="#M000059" class="method-signature">
2193
- <span class="method-name">take_while</span><span class="method-args">(p, list)</span>
2194
- </a>
2195
- </div>
2196
-
2197
- <div class="method-description">
2198
- <table>
2199
- <tr><td valign="top">takeWhile &#8212; :</td><td>(a -&gt; Bool) -&gt; [a] -&gt; [a]
2200
-
2201
- </td></tr>
2202
- </table>
2203
- <p><a class="source-toggle" href="#"
2204
- onclick="toggleCode('M000059-source');return false;">[Source]</a></p>
2205
- <div class="method-source-code" id="M000059-source">
2206
- <pre>
2207
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 308</span>
2208
- 308: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">take_while</span>(<span class="ruby-identifier">p</span>, <span class="ruby-identifier">list</span>)
2209
- 309: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">list</span>
2210
- 310: <span class="ruby-keyword kw">when</span> [] <span class="ruby-operator">:</span> <span class="ruby-identifier">lambda</span> { [] }
2211
- 311: <span class="ruby-keyword kw">else</span> <span class="ruby-identifier">p</span>[<span class="ruby-operator">~</span><span class="ruby-identifier">head</span>(<span class="ruby-identifier">list</span>)] <span class="ruby-operator">?</span> <span class="ruby-identifier">lambda</span> { [<span class="ruby-operator">~</span><span class="ruby-identifier">head</span>(<span class="ruby-identifier">list</span>)]<span class="ruby-operator">+</span> <span class="ruby-operator">~</span><span class="ruby-identifier">take_while</span>(<span class="ruby-identifier">p</span>, <span class="ruby-operator">~</span><span class="ruby-identifier">tail</span>(<span class="ruby-identifier">list</span>)) } <span class="ruby-operator">:</span> <span class="ruby-identifier">lambda</span> { [] }
2212
- 312: <span class="ruby-keyword kw">end</span>
2213
- 313: <span class="ruby-keyword kw">end</span>
2214
- </pre>
2215
- </div>
2216
- </div>
2217
- </div>
2218
-
2219
- <div id="method-M000025" class="method-detail">
2220
- <a name="M000025"></a>
2221
-
2222
- <div class="method-heading">
2223
- <a href="#M000025" class="method-signature">
2224
- <span class="method-name">transpose</span><span class="method-args">(list)</span>
2225
- </a>
2226
- </div>
2227
-
2228
- <div class="method-description">
2229
- <table>
2230
- <tr><td valign="top">transpose &#8212; :</td><td>[[a]] -&gt; [[a]]
2231
-
2232
- </td></tr>
2233
- </table>
2234
- <p><a class="source-toggle" href="#"
2235
- onclick="toggleCode('M000025-source');return false;">[Source]</a></p>
2236
- <div class="method-source-code" id="M000025-source">
2237
- <pre>
2238
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 105</span>
2239
- 105: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">transpose</span>(<span class="ruby-identifier">list</span>)
2240
- 106: <span class="ruby-comment cmt"># FIXIT</span>
2241
- 107: <span class="ruby-identifier">lambda</span> { <span class="ruby-identifier">list</span>.<span class="ruby-identifier">transpose</span> }
2242
- 108: <span class="ruby-keyword kw">end</span>
2243
- </pre>
2244
- </div>
2245
- </div>
2246
- </div>
2247
-
2248
- <div id="method-M000055" class="method-detail">
2249
- <a name="M000055"></a>
2250
-
2251
- <div class="method-heading">
2252
- <a href="#M000055" class="method-signature">
2253
- <span class="method-name">unfoldr</span><span class="method-args">(list)</span>
2254
- </a>
2255
- </div>
2256
-
2257
- <div class="method-description">
2258
- <table>
2259
- <tr><td valign="top">unfoldr &#8212; :</td><td>(b -&gt; Maybe (a, b)) -&gt; b -&gt; [a]
2260
-
2261
- </td></tr>
2262
- </table>
2263
- <p><a class="source-toggle" href="#"
2264
- onclick="toggleCode('M000055-source');return false;">[Source]</a></p>
2265
- <div class="method-source-code" id="M000055-source">
2266
- <pre>
2267
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 283</span>
2268
- 283: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">unfoldr</span>(<span class="ruby-identifier">list</span>)
2269
- 284: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'unfoldr' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
2270
- 285: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
2271
- 286: <span class="ruby-keyword kw">end</span>
2272
- </pre>
2273
- </div>
2274
- </div>
2275
- </div>
2276
-
2277
- <div id="method-M000105" class="method-detail">
2278
- <a name="M000105"></a>
2279
-
2280
- <div class="method-heading">
2281
- <a href="#M000105" class="method-signature">
2282
- <span class="method-name">union</span><span class="method-args">(list)</span>
2283
- </a>
2284
- </div>
2285
-
2286
- <div class="method-description">
2287
- <table>
2288
- <tr><td valign="top">union &#8212; :</td><td>(Eq a) =&gt; [a] -&gt; [a] -&gt; [a]
2289
-
2290
- </td></tr>
2291
- </table>
2292
- <p><a class="source-toggle" href="#"
2293
- onclick="toggleCode('M000105-source');return false;">[Source]</a></p>
2294
- <div class="method-source-code" id="M000105-source">
2295
- <pre>
2296
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 561</span>
2297
- 561: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">union</span>(<span class="ruby-identifier">list</span>)
2298
- 562: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'union' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
2299
- 563: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
2300
- 564: <span class="ruby-keyword kw">end</span>
2301
- </pre>
2302
- </div>
2303
- </div>
2304
- </div>
2305
-
2306
- <div id="method-M000101" class="method-detail">
2307
- <a name="M000101"></a>
2308
-
2309
- <div class="method-heading">
2310
- <a href="#M000101" class="method-signature">
2311
- <span class="method-name">unlines</span><span class="method-args">(list)</span>
2312
- </a>
2313
- </div>
2314
-
2315
- <div class="method-description">
2316
- <table>
2317
- <tr><td valign="top">unlines &#8212; :</td><td>[String] -&gt; String
2318
-
2319
- </td></tr>
2320
- </table>
2321
- <p><a class="source-toggle" href="#"
2322
- onclick="toggleCode('M000101-source');return false;">[Source]</a></p>
2323
- <div class="method-source-code" id="M000101-source">
2324
- <pre>
2325
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 535</span>
2326
- 535: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">unlines</span>(<span class="ruby-identifier">list</span>)
2327
- 536: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'unlines' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
2328
- 537: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
2329
- 538: <span class="ruby-keyword kw">end</span>
2330
- </pre>
2331
- </div>
2332
- </div>
2333
- </div>
2334
-
2335
- <div id="method-M000102" class="method-detail">
2336
- <a name="M000102"></a>
2337
-
2338
- <div class="method-heading">
2339
- <a href="#M000102" class="method-signature">
2340
- <span class="method-name">unwords</span><span class="method-args">(list)</span>
2341
- </a>
2342
- </div>
2343
-
2344
- <div class="method-description">
2345
- <table>
2346
- <tr><td valign="top">unwords &#8212; :</td><td>[String] -&gt; String
2347
-
2348
- </td></tr>
2349
- </table>
2350
- <p><a class="source-toggle" href="#"
2351
- onclick="toggleCode('M000102-source');return false;">[Source]</a></p>
2352
- <div class="method-source-code" id="M000102-source">
2353
- <pre>
2354
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 541</span>
2355
- 541: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">unwords</span>(<span class="ruby-identifier">list</span>)
2356
- 542: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'unwords' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
2357
- 543: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
2358
- 544: <span class="ruby-keyword kw">end</span>
2359
- </pre>
2360
- </div>
2361
- </div>
2362
- </div>
2363
-
2364
- <div id="method-M000096" class="method-detail">
2365
- <a name="M000096"></a>
2366
-
2367
- <div class="method-heading">
2368
- <a href="#M000096" class="method-signature">
2369
- <span class="method-name">unzip</span><span class="method-args">(list)</span>
2370
- </a>
2371
- </div>
2372
-
2373
- <div class="method-description">
2374
- <table>
2375
- <tr><td valign="top">unzip &#8212; :</td><td>[(a,b)] -&gt; ([a],[b])
2376
-
2377
- </td></tr>
2378
- </table>
2379
- <p><a class="source-toggle" href="#"
2380
- onclick="toggleCode('M000096-source');return false;">[Source]</a></p>
2381
- <div class="method-source-code" id="M000096-source">
2382
- <pre>
2383
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 501</span>
2384
- 501: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">unzip</span>(<span class="ruby-identifier">list</span>)
2385
- 502: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'unzip' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
2386
- 503: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
2387
- 504: <span class="ruby-keyword kw">end</span>
2388
- </pre>
2389
- </div>
2390
- </div>
2391
- </div>
2392
-
2393
- <div id="method-M000097" class="method-detail">
2394
- <a name="M000097"></a>
2395
-
2396
- <div class="method-heading">
2397
- <a href="#M000097" class="method-signature">
2398
- <span class="method-name">unzip3</span><span class="method-args">(list)</span>
2399
- </a>
2400
- </div>
2401
-
2402
- <div class="method-description">
2403
- <p>
2404
- unzip3
2405
- </p>
2406
- <p><a class="source-toggle" href="#"
2407
- onclick="toggleCode('M000097-source');return false;">[Source]</a></p>
2408
- <div class="method-source-code" id="M000097-source">
2409
- <pre>
2410
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 507</span>
2411
- 507: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">unzip3</span>(<span class="ruby-identifier">list</span>)
2412
- 508: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'unzip3' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
2413
- 509: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
2414
- 510: <span class="ruby-keyword kw">end</span>
2415
- </pre>
2416
- </div>
2417
- </div>
2418
- </div>
2419
-
2420
- <div id="method-M000098" class="method-detail">
2421
- <a name="M000098"></a>
2422
-
2423
- <div class="method-heading">
2424
- <a href="#M000098" class="method-signature">
2425
- <span class="method-name">unzip4</span><span class="method-args">(list)</span>
2426
- </a>
2427
- </div>
2428
-
2429
- <div class="method-description">
2430
- <p>
2431
- unzip4, unzip5, unzip6, unzip7
2432
- </p>
2433
- <p><a class="source-toggle" href="#"
2434
- onclick="toggleCode('M000098-source');return false;">[Source]</a></p>
2435
- <div class="method-source-code" id="M000098-source">
2436
- <pre>
2437
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 513</span>
2438
- 513: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">unzip4</span>(<span class="ruby-identifier">list</span>)
2439
- 514: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'unzip4' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
2440
- 515: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
2441
- 516: <span class="ruby-keyword kw">end</span>
2442
- </pre>
2443
- </div>
2444
- </div>
2445
- </div>
2446
-
2447
- <div id="method-M000100" class="method-detail">
2448
- <a name="M000100"></a>
2449
-
2450
- <div class="method-heading">
2451
- <a href="#M000100" class="method-signature">
2452
- <span class="method-name">words</span><span class="method-args">(list)</span>
2453
- </a>
2454
- </div>
2455
-
2456
- <div class="method-description">
2457
- <table>
2458
- <tr><td valign="top">words &#8212; :</td><td>String -&gt; [String]
2459
-
2460
- </td></tr>
2461
- </table>
2462
- <p><a class="source-toggle" href="#"
2463
- onclick="toggleCode('M000100-source');return false;">[Source]</a></p>
2464
- <div class="method-source-code" id="M000100-source">
2465
- <pre>
2466
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 529</span>
2467
- 529: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">words</span>(<span class="ruby-identifier">list</span>)
2468
- 530: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'words' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
2469
- 531: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
2470
- 532: <span class="ruby-keyword kw">end</span>
2471
- </pre>
2472
- </div>
2473
- </div>
2474
- </div>
2475
-
2476
- <div id="method-M000087" class="method-detail">
2477
- <a name="M000087"></a>
2478
-
2479
- <div class="method-heading">
2480
- <a href="#M000087" class="method-signature">
2481
- <span class="method-name">zip</span><span class="method-args">(list1, list2)</span>
2482
- </a>
2483
- </div>
2484
-
2485
- <div class="method-description">
2486
- <table>
2487
- <tr><td valign="top">zip &#8212; :</td><td>[a] -&gt; [b] -&gt; [(a,b)]
2488
-
2489
- </td></tr>
2490
- </table>
2491
- <p><a class="source-toggle" href="#"
2492
- onclick="toggleCode('M000087-source');return false;">[Source]</a></p>
2493
- <div class="method-source-code" id="M000087-source">
2494
- <pre>
2495
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 459</span>
2496
- 459: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">zip</span>(<span class="ruby-identifier">list1</span>, <span class="ruby-identifier">list2</span>)
2497
- 460: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'zip' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
2498
- 461: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
2499
- 462: <span class="ruby-keyword kw">end</span>
2500
- </pre>
2501
- </div>
2502
- </div>
2503
- </div>
2504
-
2505
- <div id="method-M000088" class="method-detail">
2506
- <a name="M000088"></a>
2507
-
2508
- <div class="method-heading">
2509
- <a href="#M000088" class="method-signature">
2510
- <span class="method-name">zip3</span><span class="method-args">(list)</span>
2511
- </a>
2512
- </div>
2513
-
2514
- <div class="method-description">
2515
- <p>
2516
- zip3
2517
- </p>
2518
- <p><a class="source-toggle" href="#"
2519
- onclick="toggleCode('M000088-source');return false;">[Source]</a></p>
2520
- <div class="method-source-code" id="M000088-source">
2521
- <pre>
2522
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 465</span>
2523
- 465: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">zip3</span>(<span class="ruby-identifier">list</span>)
2524
- 466: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'zip3' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
2525
- 467: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
2526
- 468: <span class="ruby-keyword kw">end</span>
2527
- </pre>
2528
- </div>
2529
- </div>
2530
- </div>
2531
-
2532
- <div id="method-M000089" class="method-detail">
2533
- <a name="M000089"></a>
2534
-
2535
- <div class="method-heading">
2536
- <a href="#M000089" class="method-signature">
2537
- <span class="method-name">zip4</span><span class="method-args">(list)</span>
2538
- </a>
2539
- </div>
2540
-
2541
- <div class="method-description">
2542
- <p>
2543
- zip4, zip5, zip6, zip7
2544
- </p>
2545
- <p><a class="source-toggle" href="#"
2546
- onclick="toggleCode('M000089-source');return false;">[Source]</a></p>
2547
- <div class="method-source-code" id="M000089-source">
2548
- <pre>
2549
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 471</span>
2550
- 471: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">zip4</span>(<span class="ruby-identifier">list</span>)
2551
- 472: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'zip4' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
2552
- 473: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
2553
- 474: <span class="ruby-keyword kw">end</span>
2554
- </pre>
2555
- </div>
2556
- </div>
2557
- </div>
2558
-
2559
- <div id="method-M000091" class="method-detail">
2560
- <a name="M000091"></a>
2561
-
2562
- <div class="method-heading">
2563
- <span class="method-name">zipWith</span><span class="method-args">(list)</span>
2564
- </div>
2565
-
2566
- <div class="method-description">
2567
- <p>
2568
- Alias for <a href="List.html#M000090">zip_with</a>
2569
- </p>
2570
- </div>
2571
- </div>
2572
-
2573
- <div id="method-M000093" class="method-detail">
2574
- <a name="M000093"></a>
2575
-
2576
- <div class="method-heading">
2577
- <span class="method-name">zipWith3</span><span class="method-args">(list)</span>
2578
- </div>
2579
-
2580
- <div class="method-description">
2581
- <p>
2582
- Alias for <a href="List.html#M000092">zip_with3</a>
2583
- </p>
2584
- </div>
2585
- </div>
2586
-
2587
- <div id="method-M000095" class="method-detail">
2588
- <a name="M000095"></a>
2589
-
2590
- <div class="method-heading">
2591
- <span class="method-name">zipWith4</span><span class="method-args">(list)</span>
2592
- </div>
2593
-
2594
- <div class="method-description">
2595
- <p>
2596
- Alias for <a href="List.html#M000094">zip_with4</a>
2597
- </p>
2598
- </div>
2599
- </div>
2600
-
2601
- <div id="method-M000090" class="method-detail">
2602
- <a name="M000090"></a>
2603
-
2604
- <div class="method-heading">
2605
- <a href="#M000090" class="method-signature">
2606
- <span class="method-name">zip_with</span><span class="method-args">(list)</span>
2607
- </a>
2608
- </div>
2609
-
2610
- <div class="method-description">
2611
- <table>
2612
- <tr><td valign="top">zipWith &#8212; :</td><td>(a -&gt; b -&gt; c) -&gt; [a] -&gt; [b] -&gt; [c]
2613
-
2614
- </td></tr>
2615
- </table>
2616
- <p><a class="source-toggle" href="#"
2617
- onclick="toggleCode('M000090-source');return false;">[Source]</a></p>
2618
- <div class="method-source-code" id="M000090-source">
2619
- <pre>
2620
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 477</span>
2621
- 477: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">zip_with</span>(<span class="ruby-identifier">list</span>)
2622
- 478: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'zip_with' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
2623
- 479: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
2624
- 480: <span class="ruby-keyword kw">end</span>
2625
- </pre>
2626
- </div>
2627
- </div>
2628
- </div>
2629
-
2630
- <div id="method-M000092" class="method-detail">
2631
- <a name="M000092"></a>
2632
-
2633
- <div class="method-heading">
2634
- <a href="#M000092" class="method-signature">
2635
- <span class="method-name">zip_with3</span><span class="method-args">(list)</span>
2636
- </a>
2637
- </div>
2638
-
2639
- <div class="method-description">
2640
- <p>
2641
- zipWith3
2642
- </p>
2643
- <p><a class="source-toggle" href="#"
2644
- onclick="toggleCode('M000092-source');return false;">[Source]</a></p>
2645
- <div class="method-source-code" id="M000092-source">
2646
- <pre>
2647
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 485</span>
2648
- 485: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">zip_with3</span>(<span class="ruby-identifier">list</span>)
2649
- 486: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'zip_with3' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
2650
- 487: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
2651
- 488: <span class="ruby-keyword kw">end</span>
2652
- </pre>
2653
- </div>
2654
- </div>
2655
- </div>
2656
-
2657
- <div id="method-M000094" class="method-detail">
2658
- <a name="M000094"></a>
2659
-
2660
- <div class="method-heading">
2661
- <a href="#M000094" class="method-signature">
2662
- <span class="method-name">zip_with4</span><span class="method-args">(list)</span>
2663
- </a>
2664
- </div>
2665
-
2666
- <div class="method-description">
2667
- <p>
2668
- zipWith4, zipWith5, zipWith6, zipWith7
2669
- </p>
2670
- <p><a class="source-toggle" href="#"
2671
- onclick="toggleCode('M000094-source');return false;">[Source]</a></p>
2672
- <div class="method-source-code" id="M000094-source">
2673
- <pre>
2674
- <span class="ruby-comment cmt"># File lib/prelude/list.rb, line 493</span>
2675
- 493: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">zip_with4</span>(<span class="ruby-identifier">list</span>)
2676
- 494: <span class="ruby-identifier">warn</span> <span class="ruby-value str">&quot;Method 'zip_with4' is not implemented yet.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$VERBOSE</span>
2677
- 495: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">lambda</span> { [] }
2678
- 496: <span class="ruby-keyword kw">end</span>
2679
- </pre>
2680
- </div>
2681
- </div>
2682
- </div>
2683
-
2684
-
2685
- </div>
2686
-
2687
-
2688
- </div>
2689
-
2690
-
2691
- </body>
2692
- </html>