| David B. MacQueen. Reflections on Standard ML. In Functional Programming, Concurrency, Simulation and Automated Reasoning, volume 693 of LNCS. Springer Verlag, 1992. |
....on the static typing side, especially on finding reasonable compromises between the flexibilities of dynamic manipulation of modules and the restrictions of static typing. This is even more difficult if the module language becomes an organic extension of the underlying polymorphic type system [Mac92] as it is the case for Standard ML: module manipulation subsumes type manipulation, and a central topic of the work of Lillibridge and Leroy is the wish to maximize the visibility of type manipulations in higher order module languages while guaranteeing termination of static type elaboration. To ....
David B. MacQueen. Reflections on Standard ML. In Functional Programming, Concurrency, Simulation and Automated Reasoning, volume 693 of LNCS. Springer Verlag, 1992.
....does not do this) Thus the creation of closures only appears outside common execution paths or in ways that can be easily optimized. 2.3 Memory management Ocaml supports garbage collected memory management. Although some ML implementations are perceived to require large amounts of memory[Mac93] the Ocaml system is known for its efficient use of memory and this has not been a problem for us. Ocaml uses a generational garbage collector with a stop and copy minor heap and an incremental mark and sweep major heap. Our experiences with the garbage collector have been positive, with two ....
David MacQueen. Reflections on Standard ML. In Peter E. Lauer, editor, Functional Programming, Concurrency, Simulation and Automated Reasoning, volume 693, pages 32--46. Springer Verlag LNCS, 1993.
....and complicates features such as concurrent input output; the lack of an explicit interactive loop makes building standalone executables slightly simpler and gives a more standard basis for programming environments. In designing features for ML2000, we evaluate choices based on three criteria [29]: semantics (what do the constructs do ) implementability (can the constructs be translated to efficient machine code ) and pragmatics (can the constructs express common and useful idioms ) Pragmatics, one of the more difficult criteria to apply, also includes issues of programming methodology ....
....is no need for the value restriction. Infix declarations ML2000 does not include support for infix identifiers. Infix identifiers become too complicated in a module based language, when one must declare fixity in modules; moreover, infix identifiers have dubious utility in building large programs [29]. Abstype In SML, the abstype mechanism gives a way to construct abstract data types. Since such abstract types can be built in the module system, we omit this feature from ML2000. 4 Decisions left to be made 4.1 Type inference Support for subtyping forces a radical change in the type ....
D. B. MacQueen. Reflections on Standard ML. In P. E. Lauer, editor, Functional Programming, Concurrency, Simulation and Automated Reasoning, volume 693, pages 32--46. Springer Verlag, 1994.
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC