Recently, Mark Jones introduced first class structures as a means to express modular structure. In this paper we elaborate on this idea by comparing the module systems of Standard ML and Haskell 1.3, two widely used functional languages, and a Haskell variant equipped with such first class structures. Moreover, we look at another obvious and well-known extension to Hindley-Milner type systems, namely higher order type variables, to explore its usefulness in solving problems occuring when one attempts to structure larger programs into maintainable pieces. We argue that there are surprisingly few applications where the module system currently provided by Haskell cannot keep pace with Standard ML’s expressiveness. When one adds first class str...
AbstractThe programming language Standard ML is an amalgam of two, largely orthogonal, languages. Th...
Initial algebra semantics is one of the cornerstones of the theory of modern functional programming ...
AbstractThe programming language Standard ML is an amalgam of two, largely orthogonal, languages. Th...
Researchers repeatedly observed that the module system of ML and the type class mechanism of Haskell...
We present a type theory for higher-order modules that accounts for many central issues in module sy...
Abstract We present a type theory for higher-order modules that accountsfor many central issues in m...
. Standard ML has a module system that allows one to define parametric modules, called functors. Fun...
We present a type theory for higher-order modules that accounts for many central issues in module sy...
ML modules are a powerful language mechanism for decomposing programs into reusable components. Unfo...
ML modules and Haskell type classes have proven to be highly ef-fective tools for program structurin...
ML is two languages in one: there is the core, with types and ex-pressions, and there are modules, w...
The ease of understanding, maintaining, and developing a large program depends crucially on how it i...
ML is two languages in one: there is the core, with types and ex-pressions, and there are modules, w...
ML modules are a powerful language mechanism for decomposing programs into reusable com-ponents. Unf...
In this paper we present a language for programming with higher-order modules.y The language, HML, i...
AbstractThe programming language Standard ML is an amalgam of two, largely orthogonal, languages. Th...
Initial algebra semantics is one of the cornerstones of the theory of modern functional programming ...
AbstractThe programming language Standard ML is an amalgam of two, largely orthogonal, languages. Th...
Researchers repeatedly observed that the module system of ML and the type class mechanism of Haskell...
We present a type theory for higher-order modules that accounts for many central issues in module sy...
Abstract We present a type theory for higher-order modules that accountsfor many central issues in m...
. Standard ML has a module system that allows one to define parametric modules, called functors. Fun...
We present a type theory for higher-order modules that accounts for many central issues in module sy...
ML modules are a powerful language mechanism for decomposing programs into reusable components. Unfo...
ML modules and Haskell type classes have proven to be highly ef-fective tools for program structurin...
ML is two languages in one: there is the core, with types and ex-pressions, and there are modules, w...
The ease of understanding, maintaining, and developing a large program depends crucially on how it i...
ML is two languages in one: there is the core, with types and ex-pressions, and there are modules, w...
ML modules are a powerful language mechanism for decomposing programs into reusable com-ponents. Unf...
In this paper we present a language for programming with higher-order modules.y The language, HML, i...
AbstractThe programming language Standard ML is an amalgam of two, largely orthogonal, languages. Th...
Initial algebra semantics is one of the cornerstones of the theory of modern functional programming ...
AbstractThe programming language Standard ML is an amalgam of two, largely orthogonal, languages. Th...