Abstract:Haskell is an extension of Haskell that supports the construction of generic programs. These lecture notes describe the basic constructs of Haskell and highlight the underlying theory. programming aim...Haskell is an extension of Haskell that supports the construction of generic programs. These lecture notes describe the basic constructs of Haskell and highlight the underlying theory. programming aims at making programming more effective by making it more general. programs often embody non-traditional kinds of poly- morphism. Haskell is an extension of Haskell (38) that supports the construction of generic programs. Haskell adds to Haskell the notion of structural polymorphism, the ability to define a function (or a type) by induction on the structure of types. Such a function is generic in the sense that it works not only for a specific type but for a whole class of types. Typical examples include equality, parsing and pretty printing, serialising, ordering, hashing, and so on. The lecture notes on Haskell are organized into two parts. This first part motivates the need for genericity, describes the basic constructs of Haskell, puts Haskell into perspective, and highlights the underlying theory. The second part entitled Generic Haskell: delves deeper into the language discussing three non-trivial applications of Haskell: generic dictionaries, compressing XML documents, and a generic version of the zipper data type. The first part is organized as follows. Section 1 provides some background discussing type systems in general and the type system of Haskell in particular. Furthermore, it motivates the basic constructs of Haskell. Section 2 takes a closer look at generic definitions and shows how to define some popular generic functions. Section 3 highlights the theory underlying Haskell and discusses its implementation. Section 4 concludes.Read More
Publication Year: 2003
Publication Date: 2003-01-01
Language: en
Type: book
Access and Citation
Cited By Count: 91
AI Researcher Chatbot
Get quick answers to your questions about the article from our AI researcher chatbot