MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  Modeling HTML in Haskell (2000) [18 citations — 2 self]

Download:
Download as a PDF | Download as a PS
by Peter Thiemann
In International Workshop on Practical Aspects of Declarative Languages (PADL'00
http://www.informatik.uni-freiburg.de/~thiemann/papers/padl00.ps.gz
Add To MetaCart

Abstract:

Abstract. We dene HTML as an embedded domain specic language in Haskell. To this end, we have designed and implemented a combinator library which provides the means to create and modify HTML elements. Haskell's type classes are employed to enforce well-formed HTML to a large degree. Haskell can then be used as a meta language to map structured documents to HTML, to dene conditional content, to extract information from the documents, or to dene entire web sites. We introduce container-passing style as a programming convention for the library. We also pinpoint some shortcomings of Haskell's type system that make the task of this library's implementor tedious. Key words: embedded domain specic language, HTML, functional programming, type classes 1

Citations

2771 Introduction to Automata Theory, Language, and Computation – Hopcroft, Ullman - 1979
1147 Tcl and the Tk Toolkit – Ousterhout - 1994
156 Monad transformers and modular interpreters – Liang, Hudak, et al. - 1995
120 Type inference for record concatenation and multiple inheritance – Wand - 1989
81 2000. Generalising monads to arrows – Hughes
71 Extensible markup language (XML) 1.0. W3C Recommendation – Bray, Paoli, et al. - 1998
48 and XML: Generic combinators or typebased translation – Haskell - 1999
31 Typing record concatenation for free – R'emy
22 Logic programming with the World-Wide Web – Loke, Davison - 1996
20 Type classes with existential types – Laufer - 1996
17 WWW Programming using Computational Logic Systems (and the PiLLoW/Ciao Library – Cabeza, Hermenegildo - 1997
15 Lightweight GUIs for Functional Programming – Vullinghs, Tuijnman, et al. - 1995
13 The Design of a Functional GUI Library Using Constructor Classes – Vullings, Schulte, et al. - 1996
8 A theory of quali types – Jones - 1992
6 An extension of ML with abstract types – Odersky, Laufer - 1992
5 Microprocessor speci in Hawk – Matthews, Cook, et al. - 1998
5 Server-side web scripting with Haskell – Meijer - 2000
4 a non-strict, purely functional language. http://www.haskell.org – Haskell98 - 1998
3 Functional Programming Environment – Jones, Gofer - 1991
2 Website meta language (wml). http://www. engelschall.com/sw/wml – Engelschall
2 Hugs Online | embracing functional programming. http://www.haskell.org/hugs – Jones - 1999
2 Web authoring tools. http://www.zdnet.com/pcmag/ features/htmlauthor/_open.htm – Magazine - 1998