One of the most novel features in the functional programming language Haskell is the system of type classes used to support a combination of overloading and polymorphism. Current implementations of type class overloading are based on the use of dictionary values, passed as extra parameters to overloaded functions. Unfortunately, this can have a significant effect on run-time performance, for example, by reducing the effectiveness of important program analyses and optimizations. This paper describes how a simple partial evaluator can be used to avoid the need for dictionary values at run-time by generating specialized versions of overloaded functions. This eliminates the run-time costs of overloading. Furthermore, and somewhat surprisingly g...
We present a first order functional programming language with user defined overloading and subtyping...
We present an offline partial evaluator for a higher-order subset of ML with reference types. Its no...
One of the principal characterising features of a programming language is its type system. Many rece...
jonesmarkcsyaleedu One of the most novel features in the functional program ming language Haskell is...
The Generic Haskell programming language allows functions to be defined by induction on the structur...
Haskell overloading poses new challenges for compiler writers. Until recently there have been no imp...
We describe the implementation of a type checker for the functional programming language Haskell tha...
Functional logic overloading is a novel approach to userdefined overloading that extends Haskell’s c...
Functional logic overloading is a novel approach to userdefined overloading that extends Haskell&apo...
Introduction This paper gives a brief introduction to partial evaluation of typed functional languag...
Partial evaluation is becoming very promising as a programming tool, as its practice is now well dev...
This article presents a type system based on the Damas-Milner system [DM82], that supports overloadi...
John Hughes presents a new method for performing partial evaluation in [Hug96b]. The method is calle...
. Evaluators, also called "interpreters", play a variety of roles in the study of programm...
Static typing is one of the most prominent techniques in the design of programming languages for mak...
We present a first order functional programming language with user defined overloading and subtyping...
We present an offline partial evaluator for a higher-order subset of ML with reference types. Its no...
One of the principal characterising features of a programming language is its type system. Many rece...
jonesmarkcsyaleedu One of the most novel features in the functional program ming language Haskell is...
The Generic Haskell programming language allows functions to be defined by induction on the structur...
Haskell overloading poses new challenges for compiler writers. Until recently there have been no imp...
We describe the implementation of a type checker for the functional programming language Haskell tha...
Functional logic overloading is a novel approach to userdefined overloading that extends Haskell’s c...
Functional logic overloading is a novel approach to userdefined overloading that extends Haskell&apo...
Introduction This paper gives a brief introduction to partial evaluation of typed functional languag...
Partial evaluation is becoming very promising as a programming tool, as its practice is now well dev...
This article presents a type system based on the Damas-Milner system [DM82], that supports overloadi...
John Hughes presents a new method for performing partial evaluation in [Hug96b]. The method is calle...
. Evaluators, also called "interpreters", play a variety of roles in the study of programm...
Static typing is one of the most prominent techniques in the design of programming languages for mak...
We present a first order functional programming language with user defined overloading and subtyping...
We present an offline partial evaluator for a higher-order subset of ML with reference types. Its no...
One of the principal characterising features of a programming language is its type system. Many rece...