Import Upstream version 20180207
[hcoop/debian/mlton.git] / doc / guide / localhost / References
CommitLineData
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
14asciidoc.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&amp;type=ISBN&amp;location=10000&amp;state=&amp;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&amp;type=ISBN&amp;location=10000&amp;state=&amp;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
178that it yields nice speedups in SML.NET&#8217;s compile times. There are\r
179also benchmarks showing that SML.NET when compiled by MLton runs\r
180roughly 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&amp;rep=rep1&amp;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&#8217;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
258design 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&#8217;s closure-conversion algorithm, which translates from\r
280its simply-typed higher-order intermediate language to its\r
281simply-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
359X 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
398functions 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&amp;tid=4787">The Little MLer</a>\r
437 (<a href="http://www3.addall.com/New/submitNew.cgi?query=026256114X&amp;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
461elimination that is an optimization operating on MLton&#8217;s static single\r
462assignment (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&#8217;CAML, which has an approach to ad-hoc\r
485polymorphism based on <a href="References#Dubois95">Dubois95</a>, the differences being in how\r
486type checking works an an improved compilation approach for typecase\r
487that 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&amp;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
519followed by a detailed description of each module. The module\r
520descriptions 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&amp;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
593the Ped text editor. Argues that using large numbers of threads and\r
594message passing style is a practical and effective way of\r
595modularizing 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&#8217;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
626encountered 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&amp;type=ISBN">addall</a>).\r
650 ISBN 0471941484.\r
651 Richard Jones.\r
652 John Wiley &amp; 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
675published 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&#8217;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&amp;rep=rep1&amp;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&#8217;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
750compiler and interpreter for ML with a machine model aimed at\r
751efficient 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
788another, and is useful for the receiving thread to treat as an\r
789exception so that it can clean up locks or other state relevant to its\r
790current 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
836to four times over Moscow ML&#8217;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&#8212;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&amp;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&amp;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
888Accompanied 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&amp;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&#8217;s syntax and\r
905semantics. 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&amp;rep=rep1&amp;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
958an 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&amp;rep=rep1&amp;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&amp;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
1062different native x86 compilers (including MLton) and their register\r
1063usage 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&#8217;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
1131processor.</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&amp;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&amp;rep=rep1&amp;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
1208match-compilation heuristics and showed that choice of heuristic\r
1209usually 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
1261for 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&amp;rep=rep1&amp;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&#8217;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&amp;rep=rep1&amp;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
1359algorithm uses a unification-based flow analysis followed by\r
1360defunctionalization 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
1376is similar in structure to MLton, using monomorphisation,\r
1377defunctionalization, 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&amp;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
1430collector 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
1445collector 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
1459benchmarks 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