| A formal specification of the Haskell 98 module system |
| Full text |
Pdf
(121 KB)
|
| Source
|
Haskell
archive
Proceedings of the 2002 ACM SIGPLAN workshop on Haskell
table of contents
Pittsburgh, Pennsylvania
Pages: 17 - 28
Year of Publication: 2002
ISBN:1-58113-605-6
|
|
Authors
|
|
Iavor S. Diatchki
|
OGI School of Science & Engineering, Oregon Health & Science University, Beaverton, Oregon
|
|
Mark P. Jones
|
OGI School of Science & Engineering, Oregon Health & Science University, Beaverton, Oregon
|
|
Thomas Hallgren
|
OGI School of Science & Engineering, Oregon Health & Science University, Beaverton, Oregon
|
|
| Sponsor |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 8, Downloads (12 Months): 42, Citation Count: 4
|
|
|
ABSTRACT
Many programming languages provide means to split large programs into smaller modules. The module system of a language specifies what constitutes a module and how modules interact.This paper presents a formal specification of the module system for the functional programming language Haskell. Although many aspects of Haskell have been subjected to formal analysis, the module system has, to date, been described only informally as part of the Haskell language report. As a result, some aspects of it are not well understood or are under-specified; this causes difficulties in reasoning about Haskell programs, and leads to practical problems such as inconsistencies between different implementations. One significant aspect of our work is that the specification is written in Haskell, which means that it can also be used as an executable test-bed, and as a starting point for Haskell implementers.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
B. A. Davey and H. A. Priestley. Introduction to Lattices and Order. Cambridge University Press, 1990.
|
| |
2
|
|
| |
3
|
T. Hallgren. Home Page of the Proof Editor Alfa. http://www.cs.chalmers.se/~hallgren/Alfa/, 1996-2002.
|
 |
4
|
|
| |
5
|
M. P. Jones. Typing Haskell in Haskell. In Proceedings of the 3rd Haskell Workshop, Paris, France, October 1999.
|
| |
6
|
|
 |
7
|
|
| |
8
|
|
| |
9
|
S. Peyton Jones and J. Hughes (editors). Report on the programming language Haskell 98. Technical Report YALEU/DCS/RR-1106, Yale University, CS Dept., Feb. 1999.
|
| |
10
|
S. Peyton Jones and P. Wadler. A static semantics for Haskell. Unpublished draft, 1992.
|
| |
11
|
S. Peyton Jones (editor). Report on the programming language Haskell 98. http://research.microsoft.com/~simonpj/haskell98-revised/, March 2002.
|
| |
12
|
M. Shields and S. Peyton Jones. First class modules for Haskell. In 9th International Conference on Foundations of Object-Oriented Languages (FOOL 9), Portland, Oregon, pages 28-40, Jan. 2002.
|
| |
13
|
The GHC team. The Glasgow Haskell Compiler user's guide version 5.04. http://haskell.org/ghc/, July 2002.
|
CITED BY 4
|
|
|
|
|
|
|
|
|
|
|
Paul Hudak , John Hughes , Simon Peyton Jones , Philip Wadler, A history of Haskell: being lazy with class, Proceedings of the third ACM SIGPLAN conference on History of programming languages, p.12-1-12-55, June 09-10, 2007, San Diego, California
|
|