Commit | Line | Data |
---|---|---|
7f918cf1 CE |
1 | <!DOCTYPE html>\r |
2 | <html lang="en">\r | |
3 | <head>\r | |
4 | <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">\r | |
5 | <meta name="generator" content="AsciiDoc 8.6.9">\r | |
6 | <title>References</title>\r | |
7 | <link rel="stylesheet" href="./asciidoc.css" type="text/css">\r | |
8 | <link rel="stylesheet" href="./pygments.css" type="text/css">\r | |
9 | \r | |
10 | \r | |
11 | <script type="text/javascript" src="./asciidoc.js"></script>\r | |
12 | <script type="text/javascript">\r | |
13 | /*<![CDATA[*/\r | |
14 | asciidoc.install();\r | |
15 | /*]]>*/\r | |
16 | </script>\r | |
17 | <link rel="stylesheet" href="./mlton.css" type="text/css">\r | |
18 | </head>\r | |
19 | <body class="article">\r | |
20 | <div id="banner">\r | |
21 | <div id="banner-home">\r | |
22 | <a href="./Home">MLton 20180207</a>\r | |
23 | </div>\r | |
24 | </div>\r | |
25 | <div id="header">\r | |
26 | <h1>References</h1>\r | |
27 | </div>\r | |
28 | <div id="content">\r | |
29 | <div id="preamble">\r | |
30 | <div class="sectionbody">\r | |
31 | <div class="paragraph"><p><a href="References#AAA">A</a>\r | |
32 | <a href="References#BBB">B</a>\r | |
33 | <a href="References#CCC">C</a>\r | |
34 | <a href="References#DDD">D</a>\r | |
35 | <a href="References#EEE">E</a>\r | |
36 | <a href="References#FFF">F</a>\r | |
37 | <a href="References#GGG">G</a>\r | |
38 | <a href="References#HHH">H</a>\r | |
39 | <a href="References#III">I</a>\r | |
40 | <a href="References#JJJ">J</a>\r | |
41 | <a href="References#KKK">K</a>\r | |
42 | <a href="References#LLL">L</a>\r | |
43 | <a href="References#MMM">M</a>\r | |
44 | <a href="References#NNN">N</a>\r | |
45 | <a href="References#OOO">O</a>\r | |
46 | <a href="References#PPP">P</a>\r | |
47 | <a href="References#QQQ">Q</a>\r | |
48 | <a href="References#RRR">R</a>\r | |
49 | <a href="References#SSS">S</a>\r | |
50 | <a href="References#TTT">T</a>\r | |
51 | <a href="References#UUU">U</a>\r | |
52 | <a href="References#VVV">V</a>\r | |
53 | <a href="References#WWW">W</a>\r | |
54 | <a href="References#XXX">X</a>\r | |
55 | <a href="References#YYY">Y</a>\r | |
56 | <a href="References#ZZZ">Z</a></p></div>\r | |
57 | </div>\r | |
58 | </div>\r | |
59 | <div class="sect1">\r | |
60 | <h2 id="_a_id_aaa_a_a"><a id="AAA"></a>A</h2>\r | |
61 | <div class="sectionbody">\r | |
62 | <div class="ulist"><ul>\r | |
63 | <li>\r | |
64 | <p>\r | |
65 | <a id="AcarEtAl06"></a>\r | |
66 | <a href="http://www.umut-acar.org/publications/pldi2006.pdf">An Experimental Analysis of Self-Adjusting Computation</a>\r | |
67 | Umut Acar, Guy Blelloch, Matthias Blume, and Kanat Tangwongsan.\r | |
68 | <a href="References#PLDI">PLDI</a> 2006.\r | |
69 | </p>\r | |
70 | </li>\r | |
71 | <li>\r | |
72 | <p>\r | |
73 | <a id="Appel92"></a>\r | |
74 | <a href="http://us.cambridge.org/titles/catalogue.asp?isbn=0521416957">Compiling with Continuations</a>\r | |
75 | (<a href="http://www.addall.com/New/submitNew.cgi?query=0-521-41695-7&type=ISBN&location=10000&state=&dispCurr=USD">addall</a>).\r | |
76 | ISBN 0521416957.\r | |
77 | Andrew W. Appel.\r | |
78 | Cambridge University Press, 1992.\r | |
79 | </p>\r | |
80 | </li>\r | |
81 | <li>\r | |
82 | <p>\r | |
83 | <a id="Appel93"></a>\r | |
84 | <a href="http://www.cs.princeton.edu/research/techreps/TR-364-92">A Critique of Standard ML</a>.\r | |
85 | Andrew W. Appel.\r | |
86 | <a href="References#JFP">JFP</a> 1993.\r | |
87 | </p>\r | |
88 | </li>\r | |
89 | <li>\r | |
90 | <p>\r | |
91 | <a id="Appel98"></a>\r | |
92 | <a href="http://us.cambridge.org/titles/catalogue.asp?isbn=0521582741">Modern Compiler Implementation in ML</a>\r | |
93 | (<a href="http://www.addall.com/New/submitNew.cgi?query=0-521-58274-1&type=ISBN&location=10000&state=&dispCurr=USD">addall</a>).\r | |
94 | ISBN 0521582741\r | |
95 | Andrew W. Appel.\r | |
96 | Cambridge University Press, 1998.\r | |
97 | </p>\r | |
98 | </li>\r | |
99 | <li>\r | |
100 | <p>\r | |
101 | <a id="AppelJim97"></a>\r | |
102 | <a href="http://ncstrl.cs.princeton.edu/expand.php?id=TR-556-97">Shrinking Lambda Expressions in Linear Time</a>\r | |
103 | Andrew Appel and Trevor Jim.\r | |
104 | <a href="References#JFP">JFP</a> 1997.\r | |
105 | </p>\r | |
106 | </li>\r | |
107 | <li>\r | |
108 | <p>\r | |
109 | <a id="AppelEtAl94"></a>\r | |
110 | <a href="http://www.smlnj.org/doc/ML-Lex/manual.html">A lexical analyzer generator for Standard ML. Version 1.6.0</a>\r | |
111 | Andrew W. Appel, James S. Mattson, and David R. Tarditi. 1994\r | |
112 | </p>\r | |
113 | </li>\r | |
114 | </ul></div>\r | |
115 | </div>\r | |
116 | </div>\r | |
117 | <div class="sect1">\r | |
118 | <h2 id="_a_id_bbb_a_b"><a id="BBB"></a>B</h2>\r | |
119 | <div class="sectionbody">\r | |
120 | <div class="ulist"><ul>\r | |
121 | <li>\r | |
122 | <p>\r | |
123 | <a id="BaudinetMacQueen85"></a>\r | |
124 | <a href="http://www.classes.cs.uchicago.edu/archive/2011/spring/22620-1/papers/macqueen-baudinet85.pdf">Tree Pattern Matching for ML</a>.\r | |
125 | Marianne Baudinet, David MacQueen. 1985.\r | |
126 | </p>\r | |
127 | <div class="quoteblock">\r | |
128 | <div class="content">\r | |
129 | <div class="paragraph"><p>Describes the match compiler used in an early version of\r | |
130 | <a href="SMLNJ">SML/NJ</a>.</p></div>\r | |
131 | </div>\r | |
132 | <div class="attribution">\r | |
133 | </div></div>\r | |
134 | </li>\r | |
135 | <li>\r | |
136 | <p>\r | |
137 | <a id="BentonEtAl98"></a>\r | |
138 | <a href="http://research.microsoft.com/en-us/um/people/nick/icfp98.pdf">Compiling Standard ML to Java Bytecodes</a>.\r | |
139 | Nick Benton, Andrew Kennedy, and George Russell.\r | |
140 | <a href="References#ICFP">ICFP</a> 1998.\r | |
141 | </p>\r | |
142 | </li>\r | |
143 | <li>\r | |
144 | <p>\r | |
145 | <a id="BentonKennedy99"></a>\r | |
146 | <a href="http://research.microsoft.com/en-us/um/people/nick/SMLJavaInterop.pdf">Interlanguage Working Without Tears: Blending SML with Java</a>.\r | |
147 | Nick Benton and Andrew Kennedy.\r | |
148 | <a href="References#ICFP">ICFP</a> 1999.\r | |
149 | </p>\r | |
150 | </li>\r | |
151 | <li>\r | |
152 | <p>\r | |
153 | <a id="BentonKennedy01"></a>\r | |
154 | <a href="http://research.microsoft.com/en-us/um/people/akenn/sml/ExceptionalSyntax.pdf">Exceptional Syntax</a>.\r | |
155 | Nick Benton and Andrew Kennedy.\r | |
156 | <a href="References#JFP">JFP</a> 2001.\r | |
157 | </p>\r | |
158 | </li>\r | |
159 | <li>\r | |
160 | <p>\r | |
161 | <a id="BentonEtAl04"></a>\r | |
162 | <a href="http://research.microsoft.com/en-us/um/people/nick/p53-Benton.pdf">Adventures in Interoperability: The SML.NET Experience</a>.\r | |
163 | Nick Benton, Andrew Kennedy, and Claudio Russo.\r | |
164 | <a href="References#PPDP">PPDP</a> 2004.\r | |
165 | </p>\r | |
166 | </li>\r | |
167 | <li>\r | |
168 | <p>\r | |
169 | <a id="BentonEtAl04_2"></a>\r | |
170 | <a href="http://research.microsoft.com/en-us/um/people/nick/shrinking.pdf">Shrinking Reductions in SML.NET</a>.\r | |
171 | Nick Benton, Andrew Kennedy, Sam Lindley and Claudio Russo.\r | |
172 | <a href="References#IFL">IFL</a> 2004.\r | |
173 | </p>\r | |
174 | <div class="quoteblock">\r | |
175 | <div class="content">\r | |
176 | <div class="paragraph"><p>Describes a linear-time implementation of an\r | |
177 | <a href="References#AppelJim97">Appel-Jim shrinker</a>, using a mutable IL, and shows\r | |
178 | that it yields nice speedups in SML.NET’s compile times. There are\r | |
179 | also benchmarks showing that SML.NET when compiled by MLton runs\r | |
180 | roughly five times faster than when compiled by SML/NJ.</p></div>\r | |
181 | </div>\r | |
182 | <div class="attribution">\r | |
183 | </div></div>\r | |
184 | </li>\r | |
185 | <li>\r | |
186 | <p>\r | |
187 | <a id="Benton05"></a>\r | |
188 | <a href="http://research.microsoft.com/en-us/um/people/nick/benton03.pdf">Embedded Interpreters</a>.\r | |
189 | Nick Benton.\r | |
190 | <a href="References#JFP">JFP</a> 2005.\r | |
191 | </p>\r | |
192 | </li>\r | |
193 | <li>\r | |
194 | <p>\r | |
195 | <a id="Berry91"></a>\r | |
196 | <a href="http://www.lfcs.inf.ed.ac.uk/reports/91/ECS-LFCS-91-148/ECS-LFCS-91-148.pdf">The Edinburgh SML Library</a>.\r | |
197 | Dave Berry.\r | |
198 | University of Edinburgh Technical Report ECS-LFCS-91-148, 1991.\r | |
199 | </p>\r | |
200 | </li>\r | |
201 | <li>\r | |
202 | <p>\r | |
203 | <a id="BerryEtAl93"></a>\r | |
204 | <a href="http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.36.7958&rep=rep1&type=ps">A semantics for ML concurrency primitives</a>.\r | |
205 | Dave Berry, Robin Milner, and David N. Turner.\r | |
206 | <a href="References#POPL">POPL</a> 1992.\r | |
207 | </p>\r | |
208 | </li>\r | |
209 | <li>\r | |
210 | <p>\r | |
211 | <a id="Berry93"></a>\r | |
212 | <a href="http://journals.cambridge.org/abstract_S0956796800000873">Lessons From the Design of a Standard ML Library</a>.\r | |
213 | Dave Berry.\r | |
214 | <a href="References#JFP">JFP</a> 1993.\r | |
215 | </p>\r | |
216 | </li>\r | |
217 | <li>\r | |
218 | <p>\r | |
219 | <a id="Bertelsen98"></a>\r | |
220 | <a href="http://www.petermb.dk/sml2jvm.ps.gz">Compiling SML to Java Bytecode</a>.\r | |
221 | Peter Bertelsen.\r | |
222 | Master’s Thesis, 1998.\r | |
223 | </p>\r | |
224 | </li>\r | |
225 | <li>\r | |
226 | <p>\r | |
227 | <a id="Berthomieu00"></a>\r | |
228 | <a href="http://homepages.laas.fr/bernard/oo/ooml.html">OO Programming styles in ML</a>.\r | |
229 | Bernard Berthomieu.\r | |
230 | LAAS Report #2000111, 2000.\r | |
231 | </p>\r | |
232 | </li>\r | |
233 | <li>\r | |
234 | <p>\r | |
235 | <a id="Blume01"></a>\r | |
236 | <a href="http://people.cs.uchicago.edu/~blume/papers/nlffi-entcs.pdf">No-Longer-Foreign: Teaching an ML compiler to speak C "natively"</a>.\r | |
237 | Matthias Blume.\r | |
238 | <a href="References#BABEL">BABEL</a> 2001.\r | |
239 | </p>\r | |
240 | </li>\r | |
241 | <li>\r | |
242 | <p>\r | |
243 | <a id="Blume01_02"></a>\r | |
244 | <a href="http://people.cs.uchicago.edu/~blume/pgraph/proposal.pdf">Portable library descriptions for Standard ML</a>.\r | |
245 | Matthias Blume. 2001.\r | |
246 | </p>\r | |
247 | </li>\r | |
248 | <li>\r | |
249 | <p>\r | |
250 | <a id="Boehm03"></a>\r | |
251 | <a href="http://www.hpl.hp.com/techreports/2002/HPL-2002-335.html">Destructors, Finalizers, and Synchronization</a>.\r | |
252 | Hans Boehm.\r | |
253 | <a href="References#POPL">POPL</a> 2003.\r | |
254 | </p>\r | |
255 | <div class="quoteblock">\r | |
256 | <div class="content">\r | |
257 | <div class="paragraph"><p>Discusses a number of issues in the design of finalizers. Many of the\r | |
258 | design choices are consistent with <a href="MLtonFinalizable">MLtonFinalizable</a>.</p></div>\r | |
259 | </div>\r | |
260 | <div class="attribution">\r | |
261 | </div></div>\r | |
262 | </li>\r | |
263 | </ul></div>\r | |
264 | </div>\r | |
265 | </div>\r | |
266 | <div class="sect1">\r | |
267 | <h2 id="_a_id_ccc_a_c"><a id="CCC"></a>C</h2>\r | |
268 | <div class="sectionbody">\r | |
269 | <div class="ulist"><ul>\r | |
270 | <li>\r | |
271 | <p>\r | |
272 | <a id="CejtinEtAl00"></a>\r | |
273 | <a href="http://www.cs.purdue.edu/homes/suresh/papers/icfp99.ps.gz">Flow-directed Closure Conversion for Typed Languages</a>.\r | |
274 | Henry Cejtin, Suresh Jagannathan, and Stephen Weeks.\r | |
275 | <a href="References#ESOP">ESOP</a> 2000.\r | |
276 | </p>\r | |
277 | <div class="quoteblock">\r | |
278 | <div class="content">\r | |
279 | <div class="paragraph"><p>Describes MLton’s closure-conversion algorithm, which translates from\r | |
280 | its simply-typed higher-order intermediate language to its\r | |
281 | simply-typed first-order intermediate language.</p></div>\r | |
282 | </div>\r | |
283 | <div class="attribution">\r | |
284 | </div></div>\r | |
285 | </li>\r | |
286 | <li>\r | |
287 | <p>\r | |
288 | <a id="ChengBlelloch01"></a>\r | |
289 | <a href="http://www.cs.cmu.edu/afs/cs/project/pscico/pscico/papers/gc01/pldi-final.pdf">A Parallel, Real-Time Garbage Collector</a>.\r | |
290 | Perry Cheng and Guy E. Blelloch.\r | |
291 | <a href="References#PLDI">PLDI</a> 2001.\r | |
292 | </p>\r | |
293 | </li>\r | |
294 | <li>\r | |
295 | <p>\r | |
296 | <a id="Claessen00"></a>\r | |
297 | <a href="http://users.eecs.northwestern.edu/~robby/courses/395-495-2009-fall/quick.pdf">QuickCheck: A Lightweight Tool for Random Testing of Haskell Programs</a>.\r | |
298 | Koen Claessen and John Hughes.\r | |
299 | <a href="References#ICFP">ICFP</a> 2000.\r | |
300 | </p>\r | |
301 | </li>\r | |
302 | <li>\r | |
303 | <p>\r | |
304 | <a id="Clinger98"></a>\r | |
305 | <a href="http://www.cesura17.net/~will/Professional/Research/Papers/tail.pdf">Proper Tail Recursion and Space Efficiency</a>.\r | |
306 | William D. Clinger.\r | |
307 | <a href="References#PLDI">PLDI</a> 1998.\r | |
308 | </p>\r | |
309 | </li>\r | |
310 | <li>\r | |
311 | <p>\r | |
312 | <a id="CooperMorrisett90"></a>\r | |
313 | <a href="http://www.eecs.harvard.edu/~greg/papers/jgmorris-mlthreads.ps">Adding Threads to Standard ML</a>.\r | |
314 | Eric C. Cooper and J. Gregory Morrisett.\r | |
315 | CMU Technical Report CMU-CS-90-186, 1990.\r | |
316 | </p>\r | |
317 | </li>\r | |
318 | <li>\r | |
319 | <p>\r | |
320 | <a id="CouttsEtAl07"></a>\r | |
321 | <a href="http://metagraph.org/papers/stream_fusion.pdf">Stream Fusion: From Lists to Streams to Nothing at All</a>.\r | |
322 | Duncan Coutts, Roman Leshchinskiy, and Don Stewart.\r | |
323 | Submitted for publication. April 2007.\r | |
324 | </p>\r | |
325 | </li>\r | |
326 | </ul></div>\r | |
327 | </div>\r | |
328 | </div>\r | |
329 | <div class="sect1">\r | |
330 | <h2 id="_a_id_ddd_a_d"><a id="DDD"></a>D</h2>\r | |
331 | <div class="sectionbody">\r | |
332 | <div class="ulist"><ul>\r | |
333 | <li>\r | |
334 | <p>\r | |
335 | <a id="DamasMilner82"></a>\r | |
336 | <a href="http://groups.csail.mit.edu/pag/6.883/readings/p207-damas.pdf">Principal Type-Schemes for Functional Programs</a>.\r | |
337 | Luis Damas and Robin Milner.\r | |
338 | <a href="References#POPL">POPL</a> 1982.\r | |
339 | </p>\r | |
340 | </li>\r | |
341 | <li>\r | |
342 | <p>\r | |
343 | <a id="Danvy98"></a>\r | |
344 | <a href="http://www.brics.dk/RS/98/12">Functional Unparsing</a>.\r | |
345 | Olivier Danvy.\r | |
346 | BRICS Technical Report RS 98-12, 1998.\r | |
347 | </p>\r | |
348 | </li>\r | |
349 | <li>\r | |
350 | <p>\r | |
351 | <a id="Deboer05"></a>\r | |
352 | <a href="http://alleystoughton.us/eXene/dusty-thesis.pdf">Exhancements to eXene</a>.\r | |
353 | Dustin B. deBoer.\r | |
354 | Master of Science Thesis, 2005.\r | |
355 | </p>\r | |
356 | <div class="quoteblock">\r | |
357 | <div class="content">\r | |
358 | <div class="paragraph"><p>Describes ways to improve widget concurrency, handling of input focus,\r | |
359 | X resources and selections.</p></div>\r | |
360 | </div>\r | |
361 | <div class="attribution">\r | |
362 | </div></div>\r | |
363 | </li>\r | |
364 | <li>\r | |
365 | <p>\r | |
366 | <a id="DoligezLeroy93"></a>\r | |
367 | <a href="http://cristal.inria.fr/~doligez/publications/doligez-leroy-popl-1993.pdf">A Concurrent, Generational Garbage Collector for a Multithreaded Implementation of ML</a>.\r | |
368 | Damien Doligez and Xavier Leroy.\r | |
369 | <a href="References#POPL">POPL</a> 1993.\r | |
370 | </p>\r | |
371 | </li>\r | |
372 | <li>\r | |
373 | <p>\r | |
374 | <a id="Dreyer07"></a>\r | |
375 | <a href="http://www.mpi-sws.org/~dreyer/papers/mtc/main-long.pdf">Modular Type Classes</a>.\r | |
376 | Derek Dreyer, Robert Harper, Manuel M.T. Chakravarty, Gabriele Keller.\r | |
377 | University of Chicago Technical Report TR-2007-02, 2006.\r | |
378 | </p>\r | |
379 | </li>\r | |
380 | <li>\r | |
381 | <p>\r | |
382 | <a id="DreyerBlume07"></a>\r | |
383 | <a href="http://www.mpi-sws.org/~dreyer/papers/infmod/main-long.pdf">Principal Type Schemes for Modular Programs</a>.\r | |
384 | Derek Dreyer and Matthias Blume.\r | |
385 | <a href="References#ESOP">ESOP</a> 2007.\r | |
386 | </p>\r | |
387 | </li>\r | |
388 | <li>\r | |
389 | <p>\r | |
390 | <a id="Dubois95"></a>\r | |
391 | <a href="ftp://ftp.inria.fr/INRIA/Projects/cristal/Francois.Rouaix/generics.dvi.Z">Extensional Polymorphism</a>.\r | |
392 | Catherin Dubois, Francois Rouaix, and Pierre Weis.\r | |
393 | <a href="References#POPL">POPL</a> 1995.\r | |
394 | </p>\r | |
395 | <div class="quoteblock">\r | |
396 | <div class="content">\r | |
397 | <div class="paragraph"><p>An extension of ML that allows the definition of ad-hoc polymorphic\r | |
398 | functions by inspecting the type of their argument.</p></div>\r | |
399 | </div>\r | |
400 | <div class="attribution">\r | |
401 | </div></div>\r | |
402 | </li>\r | |
403 | </ul></div>\r | |
404 | </div>\r | |
405 | </div>\r | |
406 | <div class="sect1">\r | |
407 | <h2 id="_a_id_eee_a_e"><a id="EEE"></a>E</h2>\r | |
408 | <div class="sectionbody">\r | |
409 | <div class="ulist"><ul>\r | |
410 | <li>\r | |
411 | <p>\r | |
412 | <a id="Elsman03"></a>\r | |
413 | <a href="http://www.elsman.com/tldi03.pdf">Garbage Collection Safety for Region-based Memory Management</a>.\r | |
414 | Martin Elsman.\r | |
415 | <a href="References#TLDI">TLDI</a> 2003.\r | |
416 | </p>\r | |
417 | </li>\r | |
418 | <li>\r | |
419 | <p>\r | |
420 | <a id="Elsman04"></a>\r | |
421 | <a href="http://www.elsman.com/ITU-TR-2004-43.pdf">Type-Specialized Serialization with Sharing</a>.\r | |
422 | Martin Elsman. University of Copenhagen. IT University Technical\r | |
423 | Report TR-2004-43, 2004.\r | |
424 | </p>\r | |
425 | </li>\r | |
426 | </ul></div>\r | |
427 | </div>\r | |
428 | </div>\r | |
429 | <div class="sect1">\r | |
430 | <h2 id="_a_id_fff_a_f"><a id="FFF"></a>F</h2>\r | |
431 | <div class="sectionbody">\r | |
432 | <div class="ulist"><ul>\r | |
433 | <li>\r | |
434 | <p>\r | |
435 | <a id="FelleisenFreidman98"></a>\r | |
436 | <a href="http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&tid=4787">The Little MLer</a>\r | |
437 | (<a href="http://www3.addall.com/New/submitNew.cgi?query=026256114X&type=ISBN">addall</a>).\r | |
438 | ISBN 026256114X.\r | |
439 | Matthias Felleisen and Dan Freidman.\r | |
440 | The MIT Press, 1998.\r | |
441 | </p>\r | |
442 | </li>\r | |
443 | <li>\r | |
444 | <p>\r | |
445 | <a id="FlattFindler04"></a>\r | |
446 | <a href="http://www.cs.utah.edu/plt/kill-safe/">Kill-Safe Synchronization Abstractions</a>.\r | |
447 | Matthew Flatt and Robert Bruce Findler.\r | |
448 | <a href="References#PLDI">PLDI</a> 2004.\r | |
449 | </p>\r | |
450 | </li>\r | |
451 | <li>\r | |
452 | <p>\r | |
453 | <a id="FluetWeeks01"></a>\r | |
454 | <a href="http://www.cs.rit.edu/~mtf/research/contification">Contification Using Dominators</a>.\r | |
455 | Matthew Fluet and Stephen Weeks.\r | |
456 | <a href="References#ICFP">ICFP</a> 2001.\r | |
457 | </p>\r | |
458 | <div class="quoteblock">\r | |
459 | <div class="content">\r | |
460 | <div class="paragraph"><p>Describes contification, a generalization of tail-recursion\r | |
461 | elimination that is an optimization operating on MLton’s static single\r | |
462 | assignment (SSA) intermediate language.</p></div>\r | |
463 | </div>\r | |
464 | <div class="attribution">\r | |
465 | </div></div>\r | |
466 | </li>\r | |
467 | <li>\r | |
468 | <p>\r | |
469 | <a id="FluetPucella06"></a>\r | |
470 | <a href="http://www.cs.rit.edu/~mtf/research/phantom-subtyping/jfp06/jfp06.pdf">Phantom Types and Subtyping</a>.\r | |
471 | Matthew Fluet and Riccardo Pucella.\r | |
472 | <a href="References#JFP">JFP</a> 2006.\r | |
473 | </p>\r | |
474 | </li>\r | |
475 | <li>\r | |
476 | <p>\r | |
477 | <a id="Furuse01"></a>\r | |
478 | <a href="http://jfla.inria.fr/2001/actes/07-furuse.ps">Generic Polymorphism in ML</a>.\r | |
479 | J. Furuse.\r | |
480 | <a href="References#JFLA">JFLA</a> 2001.\r | |
481 | </p>\r | |
482 | <div class="quoteblock">\r | |
483 | <div class="content">\r | |
484 | <div class="paragraph"><p>The formalism behind G’CAML, which has an approach to ad-hoc\r | |
485 | polymorphism based on <a href="References#Dubois95">Dubois95</a>, the differences being in how\r | |
486 | type checking works an an improved compilation approach for typecase\r | |
487 | that does the matching at compile time, not run time.</p></div>\r | |
488 | </div>\r | |
489 | <div class="attribution">\r | |
490 | </div></div>\r | |
491 | </li>\r | |
492 | </ul></div>\r | |
493 | </div>\r | |
494 | </div>\r | |
495 | <div class="sect1">\r | |
496 | <h2 id="_a_id_ggg_a_g"><a id="GGG"></a>G</h2>\r | |
497 | <div class="sectionbody">\r | |
498 | <div class="ulist"><ul>\r | |
499 | <li>\r | |
500 | <p>\r | |
501 | <a id="GansnerReppy93"></a>\r | |
502 | <a href="http://alleystoughton.us/eXene/1993-trends.pdf">A Multi-Threaded Higher-order User Interface Toolkit</a>.\r | |
503 | Emden R. Gansner and John H. Reppy.\r | |
504 | User Interface Software, 1993.\r | |
505 | </p>\r | |
506 | </li>\r | |
507 | <li>\r | |
508 | <p>\r | |
509 | <a id="GansnerReppy04"></a>\r | |
510 | <a href="http://www.cambridge.org/gb/academic/subjects/computer-science/programming-languages-and-applied-logic/standard-ml-basis-library">The Standard ML Basis Library</a>.\r | |
511 | (<a href="http://www3.addall.com/New/submitNew.cgi?query=9780521794787&type=ISBN">addall</a>)\r | |
512 | ISBN 9780521794787.\r | |
513 | Emden R. Gansner and John H. Reppy.\r | |
514 | Cambridge University Press, 2004.\r | |
515 | </p>\r | |
516 | <div class="quoteblock">\r | |
517 | <div class="content">\r | |
518 | <div class="paragraph"><p>An introduction and overview of the <a href="BasisLibrary">Basis Library</a>,\r | |
519 | followed by a detailed description of each module. The module\r | |
520 | descriptions are also available\r | |
521 | <a href="http://www.standardml.org/Basis">online</a>.</p></div>\r | |
522 | </div>\r | |
523 | <div class="attribution">\r | |
524 | </div></div>\r | |
525 | </li>\r | |
526 | <li>\r | |
527 | <p>\r | |
528 | <a id="GrossmanEtAl02"></a>\r | |
529 | <a href="http://www.cs.umd.edu/projects/cyclone/papers/cyclone-regions.pdf">Region-based Memory Management in Cyclone</a>.\r | |
530 | Dan Grossman, Greg Morrisett, Trevor Jim, Michael Hicks, Yanling\r | |
531 | Wang, and James Cheney.\r | |
532 | <a href="References#PLDI">PLDI</a> 2002.\r | |
533 | </p>\r | |
534 | </li>\r | |
535 | </ul></div>\r | |
536 | </div>\r | |
537 | </div>\r | |
538 | <div class="sect1">\r | |
539 | <h2 id="_a_id_hhh_a_h"><a id="HHH"></a>H</h2>\r | |
540 | <div class="sectionbody">\r | |
541 | <div class="ulist"><ul>\r | |
542 | <li>\r | |
543 | <p>\r | |
544 | <a id="HallenbergEtAl02"></a>\r | |
545 | <a href="http://www.itu.dk/people/tofte/publ/pldi2002.pdf">Combining Region Inference and Garbage Collection</a>.\r | |
546 | Niels Hallenberg, Martin Elsman, and Mads Tofte.\r | |
547 | <a href="References#PLDI">PLDI</a> 2002.\r | |
548 | </p>\r | |
549 | </li>\r | |
550 | <li>\r | |
551 | <p>\r | |
552 | <a id="HansenRichel99"></a>\r | |
553 | <a href="http://www.it.dtu.dk/introSML">Introduction to Programming Using SML</a>\r | |
554 | (<a href="http://www3.addall.com/New/submitNew.cgi?query=0201398206&type=ISBN">addall</a>).\r | |
555 | ISBN 0201398206.\r | |
556 | Michael R. Hansen, Hans Rischel.\r | |
557 | Addison-Wesley, 1999.\r | |
558 | </p>\r | |
559 | </li>\r | |
560 | <li>\r | |
561 | <p>\r | |
562 | <a id="Harper11"></a>\r | |
563 | <a href="http://www.cs.cmu.edu/~rwh/smlbook/book.pdf">Programming in Standard ML</a>.\r | |
564 | Robert Harper.\r | |
565 | </p>\r | |
566 | </li>\r | |
567 | <li>\r | |
568 | <p>\r | |
569 | <a id="HarperEtAl93"></a>\r | |
570 | <a href="http://www.cs.cmu.edu/~rwh/papers/callcc/jfp.pdf">Typing First-Class Continuations in ML</a>.\r | |
571 | Robert Harper, Bruce F. Duba, and David MacQueen.\r | |
572 | <a href="References#JFP">JFP</a> 1993.\r | |
573 | </p>\r | |
574 | </li>\r | |
575 | <li>\r | |
576 | <p>\r | |
577 | <a id="HarperMitchell92"></a>\r | |
578 | <a href="http://www.cs.cmu.edu/~rwh/papers/xml/toplas93.pdf">On the Type Structure of Standard ML</a>.\r | |
579 | Robert Harper and John C. Mitchell.\r | |
580 | <a href="References#TOPLAS">TOPLAS</a> 1992.\r | |
581 | </p>\r | |
582 | </li>\r | |
583 | <li>\r | |
584 | <p>\r | |
585 | <a id="HauserBenson04"></a>\r | |
586 | <a href="http://doi.ieeecomputersociety.org/10.1109/CSD.2004.1309122">On the Practicality and Desirability of Highly-concurrent, Mostly-functional Programming</a>.\r | |
587 | Carl H. Hauser and David B. Benson.\r | |
588 | <a href="References#ACSD">ACSD</a> 2004.\r | |
589 | </p>\r | |
590 | <div class="quoteblock">\r | |
591 | <div class="content">\r | |
592 | <div class="paragraph"><p>Describes the use of <a href="ConcurrentML"> Concurrent ML</a> in implementing\r | |
593 | the Ped text editor. Argues that using large numbers of threads and\r | |
594 | message passing style is a practical and effective way of\r | |
595 | modularizing a program.</p></div>\r | |
596 | </div>\r | |
597 | <div class="attribution">\r | |
598 | </div></div>\r | |
599 | </li>\r | |
600 | <li>\r | |
601 | <p>\r | |
602 | <a id="HeckmanWilhelm97"></a>\r | |
603 | <a href="http://rw4.cs.uni-sb.de/~heckmann/abstracts/neuform.html">A Functional Description of TeX’s Formula Layout</a>.\r | |
604 | Reinhold Heckmann and Reinhard Wilhelm.\r | |
605 | <a href="References#JFP">JFP</a> 1997.\r | |
606 | </p>\r | |
607 | </li>\r | |
608 | <li>\r | |
609 | <p>\r | |
610 | <a id="HicksEtAl03"></a>\r | |
611 | <a href="http://wwwold.cs.umd.edu/Library/TRs/CS-TR-4514/CS-TR-4514.pdf">Safe and Flexible Memory Management in Cyclone</a>.\r | |
612 | Mike Hicks, Greg Morrisett, Dan Grossman, and Trevor Jim.\r | |
613 | University of Maryland Technical Report CS-TR-4514, 2003.\r | |
614 | </p>\r | |
615 | </li>\r | |
616 | <li>\r | |
617 | <p>\r | |
618 | <a id="Hurd04"></a>\r | |
619 | <a href="http://www.gilith.com/research/talks/tphols2004.pdf">Compiling HOL4 to Native Code</a>.\r | |
620 | Joe Hurd.\r | |
621 | <a href="References#TPHOLs">TPHOLs</a> 2004.\r | |
622 | </p>\r | |
623 | <div class="quoteblock">\r | |
624 | <div class="content">\r | |
625 | <div class="paragraph"><p>Describes a port of HOL from Moscow ML to MLton, the difficulties\r | |
626 | encountered in compiling large programs, and the speedups achieved\r | |
627 | (roughly 10x).</p></div>\r | |
628 | </div>\r | |
629 | <div class="attribution">\r | |
630 | </div></div>\r | |
631 | </li>\r | |
632 | </ul></div>\r | |
633 | </div>\r | |
634 | </div>\r | |
635 | <div class="sect1">\r | |
636 | <h2 id="_a_id_iii_a_i"><a id="III"></a>I</h2>\r | |
637 | <div class="sectionbody">\r | |
638 | <div class="paragraph"><p></p></div>\r | |
639 | </div>\r | |
640 | </div>\r | |
641 | <div class="sect1">\r | |
642 | <h2 id="_a_id_jjj_a_j"><a id="JJJ"></a>J</h2>\r | |
643 | <div class="sectionbody">\r | |
644 | <div class="ulist"><ul>\r | |
645 | <li>\r | |
646 | <p>\r | |
647 | <a id="Jones99"></a>\r | |
648 | <a href="http://www.cs.kent.ac.uk/people/staff/rej/gcbook">Garbage Collection: Algorithms for Automatic Memory Management</a>\r | |
649 | (<a href="http://www3.addall.com/New/submitNew.cgi?query=0471941484&type=ISBN">addall</a>).\r | |
650 | ISBN 0471941484.\r | |
651 | Richard Jones.\r | |
652 | John Wiley & Sons, 1999.\r | |
653 | </p>\r | |
654 | </li>\r | |
655 | </ul></div>\r | |
656 | </div>\r | |
657 | </div>\r | |
658 | <div class="sect1">\r | |
659 | <h2 id="_a_id_kkk_a_k"><a id="KKK"></a>K</h2>\r | |
660 | <div class="sectionbody">\r | |
661 | <div class="ulist"><ul>\r | |
662 | <li>\r | |
663 | <p>\r | |
664 | <a id="Kahrs93"></a>\r | |
665 | <a href="http://kar.kent.ac.uk/21122/">Mistakes and Ambiguities in the Definition of Standard ML</a>.\r | |
666 | Stefan Kahrs.\r | |
667 | University of Edinburgh Technical Report ECS-LFCS-93-257, 1993.\r | |
668 | </p>\r | |
669 | <div class="quoteblock">\r | |
670 | <div class="content">\r | |
671 | <div class="paragraph"><p>Describes a number of problems with the\r | |
672 | <a href="References#MilnerEtAl90">1990 Definition</a>, many of which were fixed in the\r | |
673 | <a href="References#MilnerEtAl97">1997 Definition</a>.</p></div>\r | |
674 | <div class="paragraph"><p>Also see the <a href="http://www.cs.kent.ac.uk/~smk/errors-new.ps.Z">addenda</a>\r | |
675 | published in 1996.</p></div>\r | |
676 | </div>\r | |
677 | <div class="attribution">\r | |
678 | </div></div>\r | |
679 | </li>\r | |
680 | <li>\r | |
681 | <p>\r | |
682 | <a id="Karvonen07"></a>\r | |
683 | <a href="http://dl.acm.org/citation.cfm?doid=1292535.1292547">Generics for the Working ML’er</a>.\r | |
684 | Vesa Karvonen.\r | |
685 | <a href="References#ML">ML</a> 2007. <a href="http://research.microsoft.com/~crusso/ml2007/slides/ml08rp-karvonen-slides.pdf">Slides</a> from the presentation are also available.\r | |
686 | </p>\r | |
687 | </li>\r | |
688 | <li>\r | |
689 | <p>\r | |
690 | <a id="Kennedy04"></a>\r | |
691 | <a href="http://research.microsoft.com/~akenn/fun/picklercombinators.pdf">Pickler Combinators</a>.\r | |
692 | Andrew Kennedy.\r | |
693 | <a href="References#JFP">JFP</a> 2004.\r | |
694 | </p>\r | |
695 | </li>\r | |
696 | <li>\r | |
697 | <p>\r | |
698 | <a id="KoserEtAl03"></a>\r | |
699 | <a href="http://www.litech.org/~vaughan/pdf/dpcool2003.pdf">sml2java: A Source To Source Translator</a>.\r | |
700 | Justin Koser, Haakon Larsen, Jeffrey A. Vaughan.\r | |
701 | <a href="References#DPCOOL">DPCOOL</a> 2003.\r | |
702 | </p>\r | |
703 | </li>\r | |
704 | </ul></div>\r | |
705 | </div>\r | |
706 | </div>\r | |
707 | <div class="sect1">\r | |
708 | <h2 id="_a_id_lll_a_l"><a id="LLL"></a>L</h2>\r | |
709 | <div class="sectionbody">\r | |
710 | <div class="ulist"><ul>\r | |
711 | <li>\r | |
712 | <p>\r | |
713 | <a id="Lang99"></a>\r | |
714 | <a href="http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.29.7130&rep=rep1&type=ps">Faster Algorithms for Finding Minimal Consistent DFAs</a>.\r | |
715 | Kevin Lang. 1999.\r | |
716 | </p>\r | |
717 | </li>\r | |
718 | <li>\r | |
719 | <p>\r | |
720 | <a id="LarsenNiss04"></a>\r | |
721 | <a href="http://usenix.org/publications/library/proceedings/usenix04/tech/freenix/full_papers/larsen/larsen.pdf">mGTK: An SML binding of Gtk+</a>.\r | |
722 | Ken Larsen and Henning Niss.\r | |
723 | USENIX Annual Technical Conference, 2004.\r | |
724 | </p>\r | |
725 | </li>\r | |
726 | <li>\r | |
727 | <p>\r | |
728 | <a id="Leibig13"></a>\r | |
729 | <a href="http://www.cs.rit.edu/~bal6053/msproject/">An LLVM Back-end for MLton</a>.\r | |
730 | Brian Leibig.\r | |
731 | MS Project Report, 2013.\r | |
732 | </p>\r | |
733 | <div class="quoteblock">\r | |
734 | <div class="content">\r | |
735 | <div class="paragraph"><p>Describes MLton’s <a href="LLVMCodegen">LLVMCodegen</a>.</p></div>\r | |
736 | </div>\r | |
737 | <div class="attribution">\r | |
738 | </div></div>\r | |
739 | </li>\r | |
740 | <li>\r | |
741 | <p>\r | |
742 | <a id="Leroy90"></a>\r | |
743 | <a href="http://pauillac.inria.fr/~xleroy/bibrefs/Leroy-ZINC.html">The ZINC Experiment: an Economical Implementation of the ML Language</a>.\r | |
744 | Xavier Leroy.\r | |
745 | Technical report 117, INRIA, 1990.\r | |
746 | </p>\r | |
747 | <div class="quoteblock">\r | |
748 | <div class="content">\r | |
749 | <div class="paragraph"><p>A detailed explanation of the design and implementation of a bytecode\r | |
750 | compiler and interpreter for ML with a machine model aimed at\r | |
751 | efficient implementation.</p></div>\r | |
752 | </div>\r | |
753 | <div class="attribution">\r | |
754 | </div></div>\r | |
755 | </li>\r | |
756 | <li>\r | |
757 | <p>\r | |
758 | <a id="Leroy93"></a>\r | |
759 | <a href="http://pauillac.inria.fr/~xleroy/bibrefs/Leroy-poly-par-nom.html">Polymorphism by Name for References and Continuations</a>.\r | |
760 | Xavier Leroy.\r | |
761 | <a href="References#POPL">POPL</a> 1993.\r | |
762 | </p>\r | |
763 | </li>\r | |
764 | <li>\r | |
765 | <p>\r | |
766 | <a id="LeungGeorge99"></a>\r | |
767 | <a href="http://www.cs.nyu.edu/leunga/my-papers/annotations.ps">MLRISC Annotations</a>.\r | |
768 | Allen Leung and Lal George. 1999.\r | |
769 | </p>\r | |
770 | </li>\r | |
771 | </ul></div>\r | |
772 | </div>\r | |
773 | </div>\r | |
774 | <div class="sect1">\r | |
775 | <h2 id="_a_id_mmm_a_m"><a id="MMM"></a>M</h2>\r | |
776 | <div class="sectionbody">\r | |
777 | <div class="ulist"><ul>\r | |
778 | <li>\r | |
779 | <p>\r | |
780 | <a id="MarlowEtAl01"></a>\r | |
781 | <a href="http://community.haskell.org/~simonmar/papers/async.pdf">Asynchronous Exceptions in Haskell</a>.\r | |
782 | Simon Marlow, Simon Peyton Jones, Andy Moran and John Reppy.\r | |
783 | <a href="References#PLDI">PLDI</a> 2001.\r | |
784 | </p>\r | |
785 | <div class="quoteblock">\r | |
786 | <div class="content">\r | |
787 | <div class="paragraph"><p>An asynchronous exception is a signal that one thread can send to\r | |
788 | another, and is useful for the receiving thread to treat as an\r | |
789 | exception so that it can clean up locks or other state relevant to its\r | |
790 | current context.</p></div>\r | |
791 | </div>\r | |
792 | <div class="attribution">\r | |
793 | </div></div>\r | |
794 | </li>\r | |
795 | <li>\r | |
796 | <p>\r | |
797 | <a id="MacQueenEtAl84"></a>\r | |
798 | <a href="http://homepages.inf.ed.ac.uk/gdp/publications/Ideal_model.pdf">An Ideal Model for Recursive Polymorphic Types</a>.\r | |
799 | David MacQueen, Gordon Plotkin, Ravi Sethi.\r | |
800 | <a href="References#POPL">POPL</a> 1984.\r | |
801 | </p>\r | |
802 | </li>\r | |
803 | <li>\r | |
804 | <p>\r | |
805 | <a id="Matthews91"></a>\r | |
806 | <a href="http://www.lfcs.inf.ed.ac.uk/reports/91/ECS-LFCS-91-174">A Distributed Concurrent Implementation of Standard ML</a>.\r | |
807 | David Matthews.\r | |
808 | University of Edinburgh Technical Report ECS-LFCS-91-174, 1991.\r | |
809 | </p>\r | |
810 | </li>\r | |
811 | <li>\r | |
812 | <p>\r | |
813 | <a id="Matthews95"></a>\r | |
814 | <a href="http://www.lfcs.inf.ed.ac.uk/reports/95/ECS-LFCS-95-335">Papers on Poly/ML</a>.\r | |
815 | David C. J. Matthews.\r | |
816 | University of Edinburgh Technical Report ECS-LFCS-95-335, 1995.\r | |
817 | </p>\r | |
818 | </li>\r | |
819 | <li>\r | |
820 | <p>\r | |
821 | <a href="http://www.lfcs.inf.ed.ac.uk/reports/97/ECS-LFCS-97-375">That About Wraps it Up: Using FIX to Handle Errors Without Exceptions, and Other Programming Tricks</a>.\r | |
822 | Bruce J. McAdam.\r | |
823 | University of Edinburgh Technical Report ECS-LFCS-97-375, 1997.\r | |
824 | </p>\r | |
825 | </li>\r | |
826 | <li>\r | |
827 | <p>\r | |
828 | <a id="MeierNorgaard93"></a>\r | |
829 | A Just-In-Time Backend for Moscow ML 2.00 in SML.\r | |
830 | Bjarke Meier, Kristian Nørgaard.\r | |
831 | Masters Thesis, 2003.\r | |
832 | </p>\r | |
833 | <div class="quoteblock">\r | |
834 | <div class="content">\r | |
835 | <div class="paragraph"><p>A just-in-time compiler using GNU Lightning, showing a speedup of up\r | |
836 | to four times over Moscow ML’s usual bytecode interpreter.</p></div>\r | |
837 | <div class="paragraph"><p>The full report is only available in\r | |
838 | <a href="http://www.itu.dk/stud/speciale/bmkn/fundanemt/download/report">Danish</a>.</p></div>\r | |
839 | </div>\r | |
840 | <div class="attribution">\r | |
841 | </div></div>\r | |
842 | </li>\r | |
843 | <li>\r | |
844 | <p>\r | |
845 | <a id="Milner78"></a>\r | |
846 | <a href="http://courses.engr.illinois.edu/cs421/sp2013/project/milner-polymorphism.pdf">A Theory of Type Polymorphism in Programming</a>.\r | |
847 | Robin Milner.\r | |
848 | Journal of Computer and System Sciences, 1978.\r | |
849 | </p>\r | |
850 | </li>\r | |
851 | <li>\r | |
852 | <p>\r | |
853 | <a id="Milner82"></a>\r | |
854 | <a href="http://homepages.inf.ed.ac.uk/dts/fps/papers/evolved.dvi.gz">How ML Evolved</a>.\r | |
855 | Robin Milner.\r | |
856 | Polymorphism—The ML/LCF/Hope Newsletter, 1983.\r | |
857 | </p>\r | |
858 | </li>\r | |
859 | <li>\r | |
860 | <p>\r | |
861 | <a id="MilnerTofte91"></a>\r | |
862 | <a href="http://www.itu.dk/people/tofte/publ/1990sml/1990sml.html">Commentary on Standard ML</a>\r | |
863 | (<a href="http://www3.addall.com/New/submitNew.cgi?query=0262631377&type=ISBN">addall</a>)\r | |
864 | ISBN 0262631377.\r | |
865 | Robin Milner and Mads Tofte.\r | |
866 | The MIT Press, 1991.\r | |
867 | </p>\r | |
868 | <div class="quoteblock">\r | |
869 | <div class="content">\r | |
870 | <div class="paragraph"><p>Introduces and explains the notation and approach used in\r | |
871 | <a href="References#MilnerEtAl90">The Definition of Standard ML</a>.</p></div>\r | |
872 | </div>\r | |
873 | <div class="attribution">\r | |
874 | </div></div>\r | |
875 | </li>\r | |
876 | <li>\r | |
877 | <p>\r | |
878 | <a id="MilnerEtAl90"></a>\r | |
879 | <a href="http://www.itu.dk/people/tofte/publ/1990sml/1990sml.html">The Definition of Standard ML</a>.\r | |
880 | (<a href="http://www3.addall.com/New/submitNew.cgi?query=0262631326&type=ISBN">addall</a>)\r | |
881 | ISBN 0262631326.\r | |
882 | Robin Milner, Mads Tofte, and Robert Harper.\r | |
883 | The MIT Press, 1990.\r | |
884 | </p>\r | |
885 | <div class="quoteblock">\r | |
886 | <div class="content">\r | |
887 | <div class="paragraph"><p>Superseded by <a href="References#MilnerEtAl97">The Definition of Standard ML (Revised)</a>.\r | |
888 | Accompanied by the <a href="References#MilnerTofte91">Commentary on Standard ML</a>.</p></div>\r | |
889 | </div>\r | |
890 | <div class="attribution">\r | |
891 | </div></div>\r | |
892 | </li>\r | |
893 | <li>\r | |
894 | <p>\r | |
895 | <a id="MilnerEtAl97"></a>\r | |
896 | <a href="http://mitpress.mit.edu/books/definition-standard-ml">The Definition of Standard ML (Revised)</a>.\r | |
897 | (<a href="http://www3.addall.com/New/submitNew.cgi?query=0262631814&type=ISBN">addall</a>)\r | |
898 | ISBN 0262631814.\r | |
899 | Robin Milner, Mads Tofte, Robert Harper, and David MacQueen.\r | |
900 | The MIT Press, 1997.\r | |
901 | </p>\r | |
902 | <div class="quoteblock">\r | |
903 | <div class="content">\r | |
904 | <div class="paragraph"><p>A terse and formal specification of Standard ML’s syntax and\r | |
905 | semantics. Supersedes <a href="References#MilnerEtAl90">The Definition of Standard ML</a>.</p></div>\r | |
906 | </div>\r | |
907 | <div class="attribution">\r | |
908 | </div></div>\r | |
909 | </li>\r | |
910 | <li>\r | |
911 | <p>\r | |
912 | <a id="ML2000"></a>\r | |
913 | <a href="http://flint.cs.yale.edu/flint/publications/ml2000.html">Principles and a Preliminary Design for ML2000</a>.\r | |
914 | The ML2000 working group, 1999.\r | |
915 | </p>\r | |
916 | </li>\r | |
917 | <li>\r | |
918 | <p>\r | |
919 | <a id="Morentsen99"></a>\r | |
920 | <a href="http://daimi.au.dk/CPnets/workshop99/papers/Mortensen.pdf">Automatic Code Generation from Coloured Petri Nets for an Access Control System</a>.\r | |
921 | Kjeld H. Mortensen.\r | |
922 | Workshop on Practical Use of Coloured Petri Nets and Design/CPN, 1999.\r | |
923 | </p>\r | |
924 | </li>\r | |
925 | <li>\r | |
926 | <p>\r | |
927 | <a id="MorrisettTolmach93"></a>\r | |
928 | <a href="http://web.cecs.pdx.edu/~apt/ppopp93.ps">Procs and Locks: a Portable Multiprocessing Platform for Standard ML of New Jersey</a>.\r | |
929 | J. Gregory Morrisett and Andrew Tolmach.\r | |
930 | <a href="References#PPoPP">PPoPP</a> 1993.\r | |
931 | </p>\r | |
932 | </li>\r | |
933 | <li>\r | |
934 | <p>\r | |
935 | <a id="Murphy06"></a>\r | |
936 | <a href="http://www.cs.cmu.edu/~tom7/papers/grid-ml06.pdf">ML Grid Programming with ConCert</a>.\r | |
937 | Tom Murphy VII.\r | |
938 | <a href="References#ML">ML</a> 2006.\r | |
939 | </p>\r | |
940 | </li>\r | |
941 | </ul></div>\r | |
942 | </div>\r | |
943 | </div>\r | |
944 | <div class="sect1">\r | |
945 | <h2 id="_a_id_nnn_a_n"><a id="NNN"></a>N</h2>\r | |
946 | <div class="sectionbody">\r | |
947 | <div class="ulist"><ul>\r | |
948 | <li>\r | |
949 | <p>\r | |
950 | <a id="Neumann99"></a>\r | |
951 | <a href="http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.25.9485&rep=rep1&type=ps">fxp - Processing Structured Documents in SML</a>.\r | |
952 | Andreas Neumann.\r | |
953 | Scottish Functional Programming Workshop, 1999.\r | |
954 | </p>\r | |
955 | <div class="quoteblock">\r | |
956 | <div class="content">\r | |
957 | <div class="paragraph"><p>Describes <a href="http://atseidl2.informatik.tu-muenchen.de/~berlea/Fxp">fxp</a>,\r | |
958 | an XML parser implemented in Standard ML.</p></div>\r | |
959 | </div>\r | |
960 | <div class="attribution">\r | |
961 | </div></div>\r | |
962 | </li>\r | |
963 | <li>\r | |
964 | <p>\r | |
965 | <a id="Neumann99Thesis"></a>\r | |
966 | <a href="http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.25.8108&rep=rep1&type=ps">Parsing and Querying XML Documents in SML</a>.\r | |
967 | Andreas Neumann.\r | |
968 | Doctoral Thesis, 1999.\r | |
969 | </p>\r | |
970 | </li>\r | |
971 | <li>\r | |
972 | <p>\r | |
973 | <a id="NguyenOhori06"></a>\r | |
974 | <a href="http://www.pllab.riec.tohoku.ac.jp/~ohori/research/NguyenOhoriPPDP06.pdf">Compiling ML Polymorphism with Explicit Layout Bitmap</a>.\r | |
975 | Huu-Duc Nguyen and Atsushi Ohori.\r | |
976 | <a href="References#PPDP">PPDP</a> 2006.\r | |
977 | </p>\r | |
978 | </li>\r | |
979 | </ul></div>\r | |
980 | </div>\r | |
981 | </div>\r | |
982 | <div class="sect1">\r | |
983 | <h2 id="_a_id_ooo_a_o"><a id="OOO"></a>O</h2>\r | |
984 | <div class="sectionbody">\r | |
985 | <div class="ulist"><ul>\r | |
986 | <li>\r | |
987 | <p>\r | |
988 | <a id="Okasaki99"></a>\r | |
989 | <a href="http://www.cambridge.org/gb/academic/subjects/computer-science/programming-languages-and-applied-logic/purely-functional-data-structures">Purely Functional Data Structures</a>.\r | |
990 | ISBN 9780521663502.\r | |
991 | Chris Okasaki.\r | |
992 | Cambridge University Press, 1999.\r | |
993 | </p>\r | |
994 | </li>\r | |
995 | <li>\r | |
996 | <p>\r | |
997 | <a id="Ohori89"></a>\r | |
998 | <a href="http://www.pllab.riec.tohoku.ac.jp/~ohori/research/fpca89.pdf">A Simple Semantics for ML Polymorphism</a>.\r | |
999 | Atsushi Ohori.\r | |
1000 | <a href="References#FPCA">FPCA</a> 1989.\r | |
1001 | </p>\r | |
1002 | </li>\r | |
1003 | <li>\r | |
1004 | <p>\r | |
1005 | <a id="Ohori95"></a>\r | |
1006 | <a href="http://www.pllab.riec.tohoku.ac.jp/~ohori/research/toplas95.pdf">A Polymorphic Record Calculus and Its Compilation</a>.\r | |
1007 | Atsushi Ohori.\r | |
1008 | <a href="References#TOPLAS">TOPLAS</a> 1995.\r | |
1009 | </p>\r | |
1010 | </li>\r | |
1011 | <li>\r | |
1012 | <p>\r | |
1013 | <a id="OhoriTakamizawa97"></a>\r | |
1014 | <a href="http://www.pllab.riec.tohoku.ac.jp/~ohori/research/jlsc97.pdf">An Unboxed Operational Semantics for ML Polymorphism</a>.\r | |
1015 | Atsushi Ohori and Tomonobu Takamizawa.\r | |
1016 | <a href="References#LASC">LASC</a> 1997.\r | |
1017 | </p>\r | |
1018 | </li>\r | |
1019 | <li>\r | |
1020 | <p>\r | |
1021 | <a id="Ohori99"></a>\r | |
1022 | <a href="http://www.pllab.riec.tohoku.ac.jp/~ohori/research/ic98.pdf">Type-Directed Specialization of Polymorphism</a>.\r | |
1023 | Atsushi Ohori.\r | |
1024 | <a href="References#IC">IC</a> 1999.\r | |
1025 | </p>\r | |
1026 | </li>\r | |
1027 | <li>\r | |
1028 | <p>\r | |
1029 | <a id="OwensEtAl09"></a>\r | |
1030 | <a href="http://www.mpi-sws.org/~turon/re-deriv.pdf">Regular-expression derivatives reexamined</a>.\r | |
1031 | Scott Owens, John Reppy, and Aaron Turon.\r | |
1032 | <a href="References#JFP">JFP</a> 2009.\r | |
1033 | </p>\r | |
1034 | </li>\r | |
1035 | </ul></div>\r | |
1036 | </div>\r | |
1037 | </div>\r | |
1038 | <div class="sect1">\r | |
1039 | <h2 id="_a_id_ppp_a_p"><a id="PPP"></a>P</h2>\r | |
1040 | <div class="sectionbody">\r | |
1041 | <div class="ulist"><ul>\r | |
1042 | <li>\r | |
1043 | <p>\r | |
1044 | <a id="Paulson96"></a>\r | |
1045 | <a href="http://www.cambridge.org/co/academic/subjects/computer-science/programming-languages-and-applied-logic/ml-working-programmer-2nd-edition">ML For the Working Programmer</a>\r | |
1046 | (<a href="http://www3.addall.com/New/submitNew.cgi?query=052156543X&type=ISBN">addall</a>)\r | |
1047 | ISBN 052156543X.\r | |
1048 | Larry C. Paulson.\r | |
1049 | Cambridge University Press, 1996.\r | |
1050 | </p>\r | |
1051 | </li>\r | |
1052 | <li>\r | |
1053 | <p>\r | |
1054 | <a id="PetterssonEtAl02"></a>\r | |
1055 | <a href="http://user.it.uu.se/~kostis/Papers/flops02_22.ps.gz">The HiPE/x86 Erlang Compiler: System Description and Performance Evaluation</a>.\r | |
1056 | Mikael Pettersson, Konstantinos Sagonas, and Erik Johansson.\r | |
1057 | <a href="References#FLOPS">FLOPS</a> 2002.\r | |
1058 | </p>\r | |
1059 | <div class="quoteblock">\r | |
1060 | <div class="content">\r | |
1061 | <div class="paragraph"><p>Describes a native x86 Erlang compiler and a comparison of many\r | |
1062 | different native x86 compilers (including MLton) and their register\r | |
1063 | usage and call stack implementations.</p></div>\r | |
1064 | </div>\r | |
1065 | <div class="attribution">\r | |
1066 | </div></div>\r | |
1067 | </li>\r | |
1068 | <li>\r | |
1069 | <p>\r | |
1070 | <a id="Price09"></a>\r | |
1071 | <a href="http://rogerprice.org/#UG">User’s Guide to ML-Lex and ML-Yacc</a>\r | |
1072 | Roger Price. 2009.\r | |
1073 | </p>\r | |
1074 | </li>\r | |
1075 | <li>\r | |
1076 | <p>\r | |
1077 | <a id="Pucella98"></a>\r | |
1078 | <a href="http://arxiv.org/abs/cs.PL/0405080">Reactive Programming in Standard ML</a>.\r | |
1079 | Riccardo R. Puccella. 1998.\r | |
1080 | <a href="References#ICCL">ICCL</a> 1998.\r | |
1081 | </p>\r | |
1082 | </li>\r | |
1083 | </ul></div>\r | |
1084 | </div>\r | |
1085 | </div>\r | |
1086 | <div class="sect1">\r | |
1087 | <h2 id="_a_id_qqq_a_q"><a id="QQQ"></a>Q</h2>\r | |
1088 | <div class="sectionbody">\r | |
1089 | <div class="paragraph"><p></p></div>\r | |
1090 | </div>\r | |
1091 | </div>\r | |
1092 | <div class="sect1">\r | |
1093 | <h2 id="_a_id_rrr_a_r"><a id="RRR"></a>R</h2>\r | |
1094 | <div class="sectionbody">\r | |
1095 | <div class="ulist"><ul>\r | |
1096 | <li>\r | |
1097 | <p>\r | |
1098 | <a id="Ramsey90"></a>\r | |
1099 | <a href="https://www.cs.princeton.edu/research/techreps/TR-262-90">Concurrent Programming in ML</a>.\r | |
1100 | Norman Ramsey.\r | |
1101 | Princeton University Technical Report CS-TR-262-90, 1990.\r | |
1102 | </p>\r | |
1103 | </li>\r | |
1104 | <li>\r | |
1105 | <p>\r | |
1106 | <a id="Ramsey11"></a>\r | |
1107 | <a href="http://www.cs.tufts.edu/~nr/pubs/embedj-abstract.html">Embedding an Interpreted Language Using Higher-Order Functions and Types</a>.\r | |
1108 | Norman Ramsey.\r | |
1109 | <a href="References#JFP">JFP</a> 2011.\r | |
1110 | </p>\r | |
1111 | </li>\r | |
1112 | <li>\r | |
1113 | <p>\r | |
1114 | <a id="RamseyFisherGovereau05"></a>\r | |
1115 | <a href="http://www.cs.tufts.edu/~nr/pubs/els-abstract.html">An Expressive Language of Signatures</a>.\r | |
1116 | Norman Ramsey, Kathleen Fisher, and Paul Govereau.\r | |
1117 | <a href="References#ICFP">ICFP</a> 2005.\r | |
1118 | </p>\r | |
1119 | </li>\r | |
1120 | <li>\r | |
1121 | <p>\r | |
1122 | <a id="RedwineRamsey04"></a>\r | |
1123 | <a href="http://www.cs.tufts.edu/~nr/pubs/widen-abstract.html">Widening Integer Arithmetic</a>.\r | |
1124 | Kevin Redwine and Norman Ramsey.\r | |
1125 | <a href="References#CC">CC</a> 2004.\r | |
1126 | </p>\r | |
1127 | <div class="quoteblock">\r | |
1128 | <div class="content">\r | |
1129 | <div class="paragraph"><p>Describes a method to implement numeric types and operations (like\r | |
1130 | <span class="monospaced">Int31</span> or <span class="monospaced">Word17</span>) for sizes smaller than that provided by the\r | |
1131 | processor.</p></div>\r | |
1132 | </div>\r | |
1133 | <div class="attribution">\r | |
1134 | </div></div>\r | |
1135 | </li>\r | |
1136 | <li>\r | |
1137 | <p>\r | |
1138 | <a id="Reppy88"></a>\r | |
1139 | Synchronous Operations as First-Class Values.\r | |
1140 | John Reppy.\r | |
1141 | <a href="References#PLDI">PLDI</a> 1988.\r | |
1142 | </p>\r | |
1143 | </li>\r | |
1144 | <li>\r | |
1145 | <p>\r | |
1146 | <a id="Reppy07"></a>\r | |
1147 | <a href="http://www.cambridge.org/co/academic/subjects/computer-science/distributed-networked-and-mobile-computing/concurrent-programming-ml">Concurrent Programming in ML</a>\r | |
1148 | (<a href="http://www3.addall.com/New/submitNew.cgi?query=9780521714723&type=ISBN">addall</a>).\r | |
1149 | ISBN 9780521714723.\r | |
1150 | John Reppy.\r | |
1151 | Cambridge University Press, 2007.\r | |
1152 | </p>\r | |
1153 | <div class="quoteblock">\r | |
1154 | <div class="content">\r | |
1155 | <div class="paragraph"><p>Describes <a href="ConcurrentML">ConcurrentML</a>.</p></div>\r | |
1156 | </div>\r | |
1157 | <div class="attribution">\r | |
1158 | </div></div>\r | |
1159 | </li>\r | |
1160 | <li>\r | |
1161 | <p>\r | |
1162 | <a id="Reynolds98"></a>\r | |
1163 | <a href="https://users-cs.au.dk/hosc/local/HOSC-11-4-pp355-361.pdf">Definitional Interpreters Revisited</a>.\r | |
1164 | John C. Reynolds.\r | |
1165 | <a href="References#HOSC">HOSC</a> 1998.\r | |
1166 | </p>\r | |
1167 | </li>\r | |
1168 | <li>\r | |
1169 | <p>\r | |
1170 | <a id="Reynolds98_2"></a>\r | |
1171 | <a href="https://users-cs.au.dk/hosc/local/HOSC-11-4-pp363-397.pdf">Definitional Interpreters for Higher-Order Programming Languages</a>\r | |
1172 | John C. Reynolds.\r | |
1173 | <a href="References#HOSC">HOSC</a> 1998.\r | |
1174 | </p>\r | |
1175 | </li>\r | |
1176 | <li>\r | |
1177 | <p>\r | |
1178 | <a id="Rossberg01"></a>\r | |
1179 | <a href="http://www.mpi-sws.org/~rossberg/papers/Rossberg%20-%20Defects%20in%20the%20Revised%20Definition%20of%20Standard%20ML%20%5B2007-01-22%20Update%5D.pdf">Defects in the Revised Definition of Standard ML</a>.\r | |
1180 | Andreas Rossberg. 2001.\r | |
1181 | </p>\r | |
1182 | </li>\r | |
1183 | </ul></div>\r | |
1184 | </div>\r | |
1185 | </div>\r | |
1186 | <div class="sect1">\r | |
1187 | <h2 id="_a_id_sss_a_s"><a id="SSS"></a>S</h2>\r | |
1188 | <div class="sectionbody">\r | |
1189 | <div class="ulist"><ul>\r | |
1190 | <li>\r | |
1191 | <p>\r | |
1192 | <a id="Sansom91"></a>\r | |
1193 | <a href="http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.24.1020&rep=rep1&type=ps">Dual-Mode Garbage Collection</a>.\r | |
1194 | Patrick M. Sansom.\r | |
1195 | Workshop on the Parallel Implementation of Functional Languages, 1991.\r | |
1196 | </p>\r | |
1197 | </li>\r | |
1198 | <li>\r | |
1199 | <p>\r | |
1200 | <a id="ScottRamsey00"></a>\r | |
1201 | <a href="http://www.cs.tufts.edu/~nr/pubs/match-abstract.html">When Do Match-Compilation Heuristics Matter</a>.\r | |
1202 | Kevin Scott and Norman Ramsey.\r | |
1203 | University of Virginia Technical Report CS-2000-13, 2000.\r | |
1204 | </p>\r | |
1205 | <div class="quoteblock">\r | |
1206 | <div class="content">\r | |
1207 | <div class="paragraph"><p>Modified SML/NJ to experimentally compare a number of\r | |
1208 | match-compilation heuristics and showed that choice of heuristic\r | |
1209 | usually does not significantly affect code size or run time.</p></div>\r | |
1210 | </div>\r | |
1211 | <div class="attribution">\r | |
1212 | </div></div>\r | |
1213 | </li>\r | |
1214 | <li>\r | |
1215 | <p>\r | |
1216 | <a id="Sestoft96"></a>\r | |
1217 | <a href="http://www.itu.dk/~sestoft/papers/match.ps.gz">ML Pattern Match Compilation and Partial Evaluation</a>.\r | |
1218 | Peter Sestoft.\r | |
1219 | Partial Evaluation, 1996.\r | |
1220 | </p>\r | |
1221 | <div class="quoteblock">\r | |
1222 | <div class="content">\r | |
1223 | <div class="paragraph"><p>Describes the derivation of the match compiler used in\r | |
1224 | <a href="MoscowML">Moscow ML</a>.</p></div>\r | |
1225 | </div>\r | |
1226 | <div class="attribution">\r | |
1227 | </div></div>\r | |
1228 | </li>\r | |
1229 | <li>\r | |
1230 | <p>\r | |
1231 | <a id="ShaoAppel94"></a>\r | |
1232 | <a href="http://flint.cs.yale.edu/flint/publications/closure.html">Space-Efficient Closure Representations</a>.\r | |
1233 | Zhong Shao and Andrew W. Appel.\r | |
1234 | <a href="References#LFP">LFP</a> 1994.\r | |
1235 | </p>\r | |
1236 | </li>\r | |
1237 | <li>\r | |
1238 | <p>\r | |
1239 | <a id="Shipman02"></a>\r | |
1240 | <a href="References.attachments/Shipman02.pdf">Unix System Programming with Standard ML</a>.\r | |
1241 | Anthony L. Shipman.\r | |
1242 | 2002.\r | |
1243 | </p>\r | |
1244 | <div class="quoteblock">\r | |
1245 | <div class="content">\r | |
1246 | <div class="paragraph"><p>Includes a description of the <a href="Swerve">Swerve</a> HTTP server written in SML.</p></div>\r | |
1247 | </div>\r | |
1248 | <div class="attribution">\r | |
1249 | </div></div>\r | |
1250 | </li>\r | |
1251 | <li>\r | |
1252 | <p>\r | |
1253 | <a id="Signoles03"></a>\r | |
1254 | Calcul Statique des Applications de Modules Parametres.\r | |
1255 | Julien Signoles.\r | |
1256 | <a href="References#JFLA">JFLA</a> 2003.\r | |
1257 | </p>\r | |
1258 | <div class="quoteblock">\r | |
1259 | <div class="content">\r | |
1260 | <div class="paragraph"><p>Describes a <a href="http://caml.inria.fr/cgi-bin/hump.en.cgi?contrib=382">defunctorizer</a>\r | |
1261 | for OCaml, and compares it to existing defunctorizers, including MLton.</p></div>\r | |
1262 | </div>\r | |
1263 | <div class="attribution">\r | |
1264 | </div></div>\r | |
1265 | </li>\r | |
1266 | <li>\r | |
1267 | <p>\r | |
1268 | <a id="SittampalamEtAl04"></a>\r | |
1269 | <a href="http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.4.1349&rep=rep1&type=ps">Incremental Execution of Transformation Specifications</a>.\r | |
1270 | Ganesh Sittampalam, Oege de Moor, and Ken Friis Larsen.\r | |
1271 | <a href="References#POPL">POPL</a> 2004.\r | |
1272 | </p>\r | |
1273 | <div class="quoteblock">\r | |
1274 | <div class="content">\r | |
1275 | <div class="paragraph"><p>Mentions a port from Moscow ML to MLton of\r | |
1276 | <a href="http://www.itu.dk/research/muddy/">MuDDY</a>, an SML wrapper around the\r | |
1277 | <a href="http://sourceforge.net/projects/buddy">BuDDY</a> BDD package.</p></div>\r | |
1278 | </div>\r | |
1279 | <div class="attribution">\r | |
1280 | </div></div>\r | |
1281 | </li>\r | |
1282 | <li>\r | |
1283 | <p>\r | |
1284 | <a id="SwaseyEtAl06"></a>\r | |
1285 | <a href="http://www.cs.cmu.edu/~tom7/papers/smlsc2-ml06.pdf">A Separate Compilation Extension to Standard ML</a>.\r | |
1286 | David Swasey, Tom Murphy VII, Karl Crary and Robert Harper.\r | |
1287 | <a href="References#ML">ML</a> 2006.\r | |
1288 | </p>\r | |
1289 | </li>\r | |
1290 | </ul></div>\r | |
1291 | </div>\r | |
1292 | </div>\r | |
1293 | <div class="sect1">\r | |
1294 | <h2 id="_a_id_ttt_a_t"><a id="TTT"></a>T</h2>\r | |
1295 | <div class="sectionbody">\r | |
1296 | <div class="ulist"><ul>\r | |
1297 | <li>\r | |
1298 | <p>\r | |
1299 | <a id="TarditiAppel00"></a>\r | |
1300 | <a href="http://www.smlnj.org/doc/ML-Yacc/index.html">ML-Yacc User’s Manual. Version 2.4</a>\r | |
1301 | David R. Tarditi and Andrew W. Appel. 2000.\r | |
1302 | </p>\r | |
1303 | </li>\r | |
1304 | <li>\r | |
1305 | <p>\r | |
1306 | <a id="TarditiEtAl90"></a>\r | |
1307 | <a href="http://research.microsoft.com/pubs/68738/loplas-sml2c.ps">No Assembly Required: Compiling Standard ML to C</a>.\r | |
1308 | David Tarditi, Peter Lee, and Anurag Acharya. 1990.\r | |
1309 | </p>\r | |
1310 | </li>\r | |
1311 | <li>\r | |
1312 | <p>\r | |
1313 | <a id="ThorupTofte94"></a>\r | |
1314 | <a href="http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.53.5372&rep=rep1&type=ps">Object-oriented programming and Standard ML</a>.\r | |
1315 | Lars Thorup and Mads Tofte.\r | |
1316 | <a href="References#ML">ML</a>, 1994.\r | |
1317 | </p>\r | |
1318 | </li>\r | |
1319 | <li>\r | |
1320 | <p>\r | |
1321 | <a id="Tofte90"></a>\r | |
1322 | Type Inference for Polymorphic References.\r | |
1323 | Mads Tofte.\r | |
1324 | <a href="References#IC">IC</a> 1990.\r | |
1325 | </p>\r | |
1326 | </li>\r | |
1327 | <li>\r | |
1328 | <p>\r | |
1329 | <a id="Tofte96"></a>\r | |
1330 | <a href="http://www.itu.dk/courses/FDP/E2004/Tofte-1996-Essentials_of_SML_Modules.pdf">Essentials of Standard ML Modules</a>.\r | |
1331 | Mads Tofte.\r | |
1332 | </p>\r | |
1333 | </li>\r | |
1334 | <li>\r | |
1335 | <p>\r | |
1336 | <a id="Tofte09"></a>\r | |
1337 | <a href="http://www.itu.dk/people/tofte/publ/tips.pdf">Tips for Computer Scientists on Standard ML (Revised)</a>.\r | |
1338 | Mads Tofte.\r | |
1339 | </p>\r | |
1340 | </li>\r | |
1341 | <li>\r | |
1342 | <p>\r | |
1343 | <a id="TolmachAppel95"></a>\r | |
1344 | <a href="http://web.cecs.pdx.edu/~apt/jfp95.ps">A Debugger for Standard ML</a>.\r | |
1345 | Andrew Tolmach and Andrew W. Appel.\r | |
1346 | <a href="References#JFP">JFP</a> 1995.\r | |
1347 | </p>\r | |
1348 | </li>\r | |
1349 | <li>\r | |
1350 | <p>\r | |
1351 | <a id="Tolmach97"></a>\r | |
1352 | <a href="http://web.cecs.pdx.edu/~apt/tic97.ps">Combining Closure Conversion with Closure Analysis using Algebraic Types</a>.\r | |
1353 | Andrew Tolmach.\r | |
1354 | <a href="References#TIC">TIC</a> 1997.\r | |
1355 | </p>\r | |
1356 | <div class="quoteblock">\r | |
1357 | <div class="content">\r | |
1358 | <div class="paragraph"><p>Describes a closure-conversion algorithm for a monomorphic IL. The\r | |
1359 | algorithm uses a unification-based flow analysis followed by\r | |
1360 | defunctionalization and is similar to the approach used in MLton\r | |
1361 | (<a href="References#CejtinEtAl00">CejtinEtAl00</a>).</p></div>\r | |
1362 | </div>\r | |
1363 | <div class="attribution">\r | |
1364 | </div></div>\r | |
1365 | </li>\r | |
1366 | <li>\r | |
1367 | <p>\r | |
1368 | <a id="TolmachOliva98"></a>\r | |
1369 | <a href="http://web.cecs.pdx.edu/~apt/jfp98.ps">From ML to Ada: Strongly-typed Language Interoperability via Source Translation</a>.\r | |
1370 | Andrew Tolmach and Dino Oliva.\r | |
1371 | <a href="References#JFP">JFP</a> 1998.\r | |
1372 | </p>\r | |
1373 | <div class="quoteblock">\r | |
1374 | <div class="content">\r | |
1375 | <div class="paragraph"><p>Describes a compiler for RML, a core SML-like language. The compiler\r | |
1376 | is similar in structure to MLton, using monomorphisation,\r | |
1377 | defunctionalization, and optimization on a first-order IL.</p></div>\r | |
1378 | </div>\r | |
1379 | <div class="attribution">\r | |
1380 | </div></div>\r | |
1381 | </li>\r | |
1382 | </ul></div>\r | |
1383 | </div>\r | |
1384 | </div>\r | |
1385 | <div class="sect1">\r | |
1386 | <h2 id="_a_id_uuu_a_u"><a id="UUU"></a>U</h2>\r | |
1387 | <div class="sectionbody">\r | |
1388 | <div class="ulist"><ul>\r | |
1389 | <li>\r | |
1390 | <p>\r | |
1391 | <a id="Ullman98"></a>\r | |
1392 | <a href="http://www-db.stanford.edu/~ullman/emlp.html">Elements of ML Programming</a>\r | |
1393 | (<a href="http://www3.addall.com/New/submitNew.cgi?query=0137903871&type=ISBN">addall</a>).\r | |
1394 | ISBN 0137903871.\r | |
1395 | Jeffrey D. Ullman.\r | |
1396 | Prentice-Hall, 1998.\r | |
1397 | </p>\r | |
1398 | </li>\r | |
1399 | </ul></div>\r | |
1400 | </div>\r | |
1401 | </div>\r | |
1402 | <div class="sect1">\r | |
1403 | <h2 id="_a_id_vvv_a_v"><a id="VVV"></a>V</h2>\r | |
1404 | <div class="sectionbody">\r | |
1405 | <div class="paragraph"><p></p></div>\r | |
1406 | </div>\r | |
1407 | </div>\r | |
1408 | <div class="sect1">\r | |
1409 | <h2 id="_a_id_www_a_w"><a id="WWW"></a>W</h2>\r | |
1410 | <div class="sectionbody">\r | |
1411 | <div class="ulist"><ul>\r | |
1412 | <li>\r | |
1413 | <p>\r | |
1414 | <a id="Wand84"></a>\r | |
1415 | <a href="http://portal.acm.org/citation.cfm?id=800527">A Types-as-Sets Semantics for Milner-Style Polymorphism</a>.\r | |
1416 | Mitchell Wand.\r | |
1417 | <a href="References#POPL">POPL</a> 1984.\r | |
1418 | </p>\r | |
1419 | </li>\r | |
1420 | <li>\r | |
1421 | <p>\r | |
1422 | <a id="Wang01"></a>\r | |
1423 | <a href="http://ncstrl.cs.princeton.edu/expand.php?id=TR-640-01">Managing Memory with Types</a>.\r | |
1424 | Daniel C. Wang.\r | |
1425 | PhD Thesis.\r | |
1426 | </p>\r | |
1427 | <div class="quoteblock">\r | |
1428 | <div class="content">\r | |
1429 | <div class="paragraph"><p>Chapter 6 describes an implementation of a type-preserving garbage\r | |
1430 | collector for MLton.</p></div>\r | |
1431 | </div>\r | |
1432 | <div class="attribution">\r | |
1433 | </div></div>\r | |
1434 | </li>\r | |
1435 | <li>\r | |
1436 | <p>\r | |
1437 | <a id="WangAppel01"></a>\r | |
1438 | <a href="http://www.cs.princeton.edu/~appel/papers/typegc.pdf">Type-Preserving Garbage Collectors</a>.\r | |
1439 | Daniel C. Wang and Andrew W. Appel.\r | |
1440 | <a href="References#POPL">POPL</a> 2001.\r | |
1441 | </p>\r | |
1442 | <div class="quoteblock">\r | |
1443 | <div class="content">\r | |
1444 | <div class="paragraph"><p>Shows how to modify MLton to generate a strongly-typed garbage\r | |
1445 | collector as part of a program.</p></div>\r | |
1446 | </div>\r | |
1447 | <div class="attribution">\r | |
1448 | </div></div>\r | |
1449 | </li>\r | |
1450 | <li>\r | |
1451 | <p>\r | |
1452 | <a id="WangMurphy02"></a>\r | |
1453 | <a href="http://www.cs.cmu.edu/~tom7/papers/wang-murphy-recursion.pdf">Programming With Recursion Schemes</a>.\r | |
1454 | Daniel C. Wang and Tom Murphy VII.\r | |
1455 | </p>\r | |
1456 | <div class="quoteblock">\r | |
1457 | <div class="content">\r | |
1458 | <div class="paragraph"><p>Describes a programming technique for data abstraction, along with\r | |
1459 | benchmarks of MLton and other SML compilers.</p></div>\r | |
1460 | </div>\r | |
1461 | <div class="attribution">\r | |
1462 | </div></div>\r | |
1463 | </li>\r | |
1464 | <li>\r | |
1465 | <p>\r | |
1466 | <a id="Weeks06"></a>\r | |
1467 | <a href="References.attachments/060916-mlton.pdf">Whole-Program Compilation in MLton</a>.\r | |
1468 | Stephen Weeks.\r | |
1469 | <a href="References#ML">ML</a> 2006.\r | |
1470 | </p>\r | |
1471 | </li>\r | |
1472 | <li>\r | |
1473 | <p>\r | |
1474 | <a id="Wright95"></a>\r | |
1475 | <a href="http://homepages.inf.ed.ac.uk/dts/fps/papers/wright.ps.gz">Simple Imperative Polymorphism</a>.\r | |
1476 | Andrew Wright.\r | |
1477 | <a href="References#LASC">LASC</a>, 8(4):343-355, 1995.\r | |
1478 | </p>\r | |
1479 | <div class="quoteblock">\r | |
1480 | <div class="content">\r | |
1481 | <div class="paragraph"><p>The origin of the <a href="ValueRestriction">ValueRestriction</a>.</p></div>\r | |
1482 | </div>\r | |
1483 | <div class="attribution">\r | |
1484 | </div></div>\r | |
1485 | </li>\r | |
1486 | </ul></div>\r | |
1487 | </div>\r | |
1488 | </div>\r | |
1489 | <div class="sect1">\r | |
1490 | <h2 id="_a_id_xxx_a_x"><a id="XXX"></a>X</h2>\r | |
1491 | <div class="sectionbody">\r | |
1492 | <div class="paragraph"><p></p></div>\r | |
1493 | </div>\r | |
1494 | </div>\r | |
1495 | <div class="sect1">\r | |
1496 | <h2 id="_a_id_yyy_a_y"><a id="YYY"></a>Y</h2>\r | |
1497 | <div class="sectionbody">\r | |
1498 | <div class="ulist"><ul>\r | |
1499 | <li>\r | |
1500 | <p>\r | |
1501 | <a id="Yang98"></a>\r | |
1502 | <a href="http://cs.nyu.edu/zheyang/papers/YangZ--ICFP98.html">Encoding Types in ML-like Languages</a>.\r | |
1503 | Zhe Yang.\r | |
1504 | <a href="References#ICFP">ICFP</a> 1998.\r | |
1505 | </p>\r | |
1506 | </li>\r | |
1507 | </ul></div>\r | |
1508 | </div>\r | |
1509 | </div>\r | |
1510 | <div class="sect1">\r | |
1511 | <h2 id="_a_id_zzz_a_z"><a id="ZZZ"></a>Z</h2>\r | |
1512 | <div class="sectionbody">\r | |
1513 | <div class="ulist"><ul>\r | |
1514 | <li>\r | |
1515 | <p>\r | |
1516 | <a id="ZiarekEtAl06"></a>\r | |
1517 | <a href="http://www.cs.purdue.edu/homes/lziarek/icfp06.pdf">Stabilizers: A Modular Checkpointing Abstraction for Concurrent Functional Programs</a>.\r | |
1518 | Lukasz Ziarek, Philip Schatz, and Suresh Jagannathan.\r | |
1519 | <a href="References#ICFP">ICFP</a> 2006.\r | |
1520 | </p>\r | |
1521 | </li>\r | |
1522 | <li>\r | |
1523 | <p>\r | |
1524 | <a id="ZiarekEtAl08"></a>\r | |
1525 | <a href="http://www.cse.buffalo.edu/~lziarek/hosc.pdf">Flattening tuples in an SSA intermediate representation</a>.\r | |
1526 | Lukasz Ziarek, Stephen Weeks, and Suresh Jagannathan.\r | |
1527 | <a href="References#HOSC">HOSC</a> 2008.\r | |
1528 | </p>\r | |
1529 | </li>\r | |
1530 | </ul></div>\r | |
1531 | </div>\r | |
1532 | </div>\r | |
1533 | <div class="sect1">\r | |
1534 | <h2 id="_abbreviations">Abbreviations</h2>\r | |
1535 | <div class="sectionbody">\r | |
1536 | <div class="ulist"><ul>\r | |
1537 | <li>\r | |
1538 | <p>\r | |
1539 | <a id="ACSD"></a> ACSD = International Conference on Application of Concurrency to System Design\r | |
1540 | </p>\r | |
1541 | </li>\r | |
1542 | <li>\r | |
1543 | <p>\r | |
1544 | <a id="BABEL"></a> BABEL = Workshop on multi-language infrastructure and interoperability\r | |
1545 | </p>\r | |
1546 | </li>\r | |
1547 | <li>\r | |
1548 | <p>\r | |
1549 | <a id="CC"></a> CC = International Conference on Compiler Construction\r | |
1550 | </p>\r | |
1551 | </li>\r | |
1552 | <li>\r | |
1553 | <p>\r | |
1554 | <a id="DPCOOL"></a> DPCOOL = Workshop on Declarative Programming in the Context of OO Languages\r | |
1555 | </p>\r | |
1556 | </li>\r | |
1557 | <li>\r | |
1558 | <p>\r | |
1559 | <a id="ESOP"></a> ESOP = European Symposium on Programming\r | |
1560 | </p>\r | |
1561 | </li>\r | |
1562 | <li>\r | |
1563 | <p>\r | |
1564 | <a id="FLOPS"></a> FLOPS = Symposium on Functional and Logic Programming\r | |
1565 | </p>\r | |
1566 | </li>\r | |
1567 | <li>\r | |
1568 | <p>\r | |
1569 | <a id="FPCA"></a> FPCA = Conference on Functional Programming Languages and Computer Architecture\r | |
1570 | </p>\r | |
1571 | </li>\r | |
1572 | <li>\r | |
1573 | <p>\r | |
1574 | <a id="HOSC"></a> HOSC = Higher-Order and Symbolic Computation\r | |
1575 | </p>\r | |
1576 | </li>\r | |
1577 | <li>\r | |
1578 | <p>\r | |
1579 | <a id="IC"></a> IC = Information and Computation\r | |
1580 | </p>\r | |
1581 | </li>\r | |
1582 | <li>\r | |
1583 | <p>\r | |
1584 | <a id="ICCL"></a> ICCL = IEEE International Conference on Computer Languages\r | |
1585 | </p>\r | |
1586 | </li>\r | |
1587 | <li>\r | |
1588 | <p>\r | |
1589 | <a id="ICFP"></a> ICFP = International Conference on Functional Programming\r | |
1590 | </p>\r | |
1591 | </li>\r | |
1592 | <li>\r | |
1593 | <p>\r | |
1594 | <a id="IFL"></a> IFL = International Workshop on Implementation and Application of Functional Languages\r | |
1595 | </p>\r | |
1596 | </li>\r | |
1597 | <li>\r | |
1598 | <p>\r | |
1599 | <a id="IVME"></a> IVME = Workshop on Interpreters, Virtual Machines and Emulators\r | |
1600 | </p>\r | |
1601 | </li>\r | |
1602 | <li>\r | |
1603 | <p>\r | |
1604 | <a id="JFLA"></a> JFLA = Journees Francophones des Langages Applicatifs\r | |
1605 | </p>\r | |
1606 | </li>\r | |
1607 | <li>\r | |
1608 | <p>\r | |
1609 | <a id="JFP"></a> JFP = Journal of Functional Programming\r | |
1610 | </p>\r | |
1611 | </li>\r | |
1612 | <li>\r | |
1613 | <p>\r | |
1614 | <a id="LASC"></a> LASC = Lisp and Symbolic Computation\r | |
1615 | </p>\r | |
1616 | </li>\r | |
1617 | <li>\r | |
1618 | <p>\r | |
1619 | <a id="LFP"></a> LFP = Lisp and Functional Programming\r | |
1620 | </p>\r | |
1621 | </li>\r | |
1622 | <li>\r | |
1623 | <p>\r | |
1624 | <a id="ML"></a> ML = Workshop on ML\r | |
1625 | </p>\r | |
1626 | </li>\r | |
1627 | <li>\r | |
1628 | <p>\r | |
1629 | <a id="PLDI"></a> PLDI = Conference on Programming Language Design and Implementation\r | |
1630 | </p>\r | |
1631 | </li>\r | |
1632 | <li>\r | |
1633 | <p>\r | |
1634 | <a id="POPL"></a> POPL = Symposium on Principles of Programming Languages\r | |
1635 | </p>\r | |
1636 | </li>\r | |
1637 | <li>\r | |
1638 | <p>\r | |
1639 | <a id="PPDP"></a> PPDP = International Conference on Principles and Practice of Declarative Programming\r | |
1640 | </p>\r | |
1641 | </li>\r | |
1642 | <li>\r | |
1643 | <p>\r | |
1644 | <a id="PPoPP"></a> PPoPP = Principles and Practice of Parallel Programming\r | |
1645 | </p>\r | |
1646 | </li>\r | |
1647 | <li>\r | |
1648 | <p>\r | |
1649 | <a id="TCS"></a> TCS = IFIP International Conference on Theoretical Computer Science\r | |
1650 | </p>\r | |
1651 | </li>\r | |
1652 | <li>\r | |
1653 | <p>\r | |
1654 | <a id="TIC"></a> TIC = Types in Compilation\r | |
1655 | </p>\r | |
1656 | </li>\r | |
1657 | <li>\r | |
1658 | <p>\r | |
1659 | <a id="TLDI"></a> TLDI = Workshop on Types in Language Design and Implementation\r | |
1660 | </p>\r | |
1661 | </li>\r | |
1662 | <li>\r | |
1663 | <p>\r | |
1664 | <a id="TOPLAS"></a> TOPLAS = Transactions on Programming Languages and Systems\r | |
1665 | </p>\r | |
1666 | </li>\r | |
1667 | <li>\r | |
1668 | <p>\r | |
1669 | <a id="TPHOLs"></a> TPHOLs = International Conference on Theorem Proving in Higher Order Logics\r | |
1670 | </p>\r | |
1671 | </li>\r | |
1672 | </ul></div>\r | |
1673 | </div>\r | |
1674 | </div>\r | |
1675 | </div>\r | |
1676 | <div id="footnotes"><hr></div>\r | |
1677 | <div id="footer">\r | |
1678 | <div id="footer-text">\r | |
1679 | </div>\r | |
1680 | <div id="footer-badges">\r | |
1681 | </div>\r | |
1682 | </div>\r | |
1683 | </body>\r | |
1684 | </html>\r |