| Mark P. Jones. Efficient implementation of type class overloading (draft). Superseded by [29, Chapters 6 and 7], March 1992. |
....this data to the programmer is also important we do not focus on this issue. Our implementation uses straightforward presentation techniques, making use of existing presentation tools where appropriate. 1. 2 Main Contributions This thesis develops a time and space profiling system for a compiled implementation of Haskell (Hudak et al. 1992]) a non strict, higher order, purely functional language. The 1.2. MAIN CONTRIBUTIONS 3 main contributions made are: ffl The approach taken explicitly addresses the key problem of the identification of the different program parts for which statistics are accumulated. To this end the notion of ....
MP Jones [1992], "Efficient implementation of type class overloading," Dept of Computer Science, Oxford University.
....useful extensions such as the possibility of defining overlapping instances. Several researchers, including this author, have investigated the theory and formal properties of type classes [8, 30, 29, 36, 44, 45, 50, 53] and there has 27 also been some experience with practical implementations [14, 28, 46, 5] and applications [27, 38, 13] Since these topics are so well documented, we will concentrate here only on the special features in the implementation of Gofer. We will also assume that the reader is familiar with the syntax and use of type classes in Gofer, as described in [24, Chapter 14] ....
Mark P. Jones. Efficient implementation of type class overloading (draft). Superseded by [29, Chapters 6 and 7], March 1992.
....the theory, while this paper stresses what we learned from practice. At the same time, these rules and the monad based[Wad92] implementation they support provide a clean, high level specification for the implementation of a typechecker, unlike more implementation oriented papers [HaBl89, Aug93, Jon92b] A further contribution of this work is the use of explicit polymorphism in the target language, as described in the next section. 1.2 A target language with explicit polymorphism As in [WB89, NS91, Jon92a] the rules given here specify a translation from a source language with type classes to ....
M. P. Jones, Efficient Implementation of Type Class Overloading. Dept. of Computing Science, Oxford University.
....while this paper stresses what we learned from practice. At the same time, these rules and the monad based [ Wad92 ] implementation they support provide a clean, high level specification for the implementation of a typechecker, unlike more implementation oriented papers [ HaBl89, Aug93, Jon92b ] A further contribution of this work is the use of explicit polymorphism in the target language. 2. Type Classes This section introduces type classes and defines the required terminology. Some simple examples based on equality and comparison operations are introduced. Some overloaded function ....
M. P. Jones, Efficient Implementation of Type Class Overloading. Dept. of Computing Science, Oxford University.
....idea that the property holds for every intermediate state in the computation. 4. 4 Implementing the Operational Semantics The state transition semantics are easily mapped onto a number of different abstract machines, including the G machine [Augustsson and Johnsson 1989] the STG machine [Peyton Jones 1992], and the TIM [Fairbairn and Wray 1987] since these abstract machines are all based on the same form of push enter stack based model of execution which captures the behavior of our abstract state transition semantics. The particular abstract machines differ in their organization of lower level ....
.... : Char] Char] Bool seenStr str seen = scc seenStr elem str seen The standard mechanism for implementing overloading has been to use method dictionaries [Hall et al. 1994; Wadler and Blott 1989] though various optimizations and alternative schemes have been proposed [Augustsson 1993; Jones 1992]. Each overloaded function is given an extra dictionary argument that contains the methods for the particular type at which the function is being applied. The dictionary is given as an argument to the generic method function, which extracts the particular method from the dictionary, which is then ....
Jones, M. P. 1992. Efficient implementation of type class overloading. Dept. of Computer Science, Oxford Univ., Oxford, U.K.
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