Results 1 -
4 of
4
Generic Haskell: applications
- In Generic Programming, Advanced Lectures, volume 2793 of LNCS
, 2003
"... Generic Haskell is an extension of Haskell that supports the construction of generic programs. These lecture notes discuss three advanced generic programming applications: generic dictionaries, compressing XML documents, and the zipper: a data structure used to represent a tree together with a s ..."
Abstract
-
Cited by 28 (15 self)
- Add to MetaCart
Generic Haskell is an extension of Haskell that supports the construction of generic programs. These lecture notes discuss three advanced generic programming applications: generic dictionaries, compressing XML documents, and the zipper: a data structure used to represent a tree together with a subtree that is the focus of attention, where that focus may move left, right, up or down the tree. When describing and implementing these examples, we will encounter some advanced features of Generic Haskell, such as type-indexed data types, dependencies between and generic abstractions of generic functions, adjusting a generic function using a default case, and generic functions with a special case for a particular constructor.
Scripting XML with Generic Haskell
- Utrecht University
, 2003
"... A generic program is written once and works on values of many data types. Generic Haskell is a recent extension of the functional programming language Haskell that supports generic programming. This paper discusses how Generic Haskell can be used to implement XML tools whose behaviour depends on ..."
Abstract
-
Cited by 15 (9 self)
- Add to MetaCart
A generic program is written once and works on values of many data types. Generic Haskell is a recent extension of the functional programming language Haskell that supports generic programming. This paper discusses how Generic Haskell can be used to implement XML tools whose behaviour depends on the DTD or Schema of the input XML document. Example tools include XML editors, databases, and compressors. Generic Haskell is ideally suited for implementing XML tools: .
UUXML: A Type-Preserving XML Schema-Haskell Data Binding
- In International Symposium on Practical Aspects of Declarative Languages (PADL’04), volume 3057 of LNCS
, 2004
"... An XML data binding is a translation of XML documents into values of some programming language. This paper discusses a type-preserving XML-Haskell data binding that handles documents typed by the W3C XML Schema standard. Our translation is based on a formal semantics of Schema, and has been proved s ..."
Abstract
-
Cited by 12 (2 self)
- Add to MetaCart
An XML data binding is a translation of XML documents into values of some programming language. This paper discusses a type-preserving XML-Haskell data binding that handles documents typed by the W3C XML Schema standard. Our translation is based on a formal semantics of Schema, and has been proved sound with respect to the semantics. We also show a program in Generic Haskell that constructs parsers specialized to a particular Schema type.
Generic Programming for XML Tools
- Utrecht University
, 2002
"... A generic program is written once, and works on values of a large class of data types (or DTD's, schemas, structures, class hierarchies). This paper shows how generic programming can be used to implement XML tools such as XML editors, databases, and compressors, that depend on the DTD of an input ..."
Abstract
-
Cited by 7 (0 self)
- Add to MetaCart
A generic program is written once, and works on values of a large class of data types (or DTD's, schemas, structures, class hierarchies). This paper shows how generic programming can be used to implement XML tools such as XML editors, databases, and compressors, that depend on the DTD of an input XML document. The resulting tools usually perform better because knowledge of the DTD can be used to optimise the tools, and are smaller, because all DTD handling is dealt with in the generic programming compiler. The paper shows how an XML compressor is implemented as a generic program, and it discusses which other classes of XML tools would profit from an implementation as a generic program.

