ACM Home Page
Please provide us with feedback. Feedback
Mixin modules
Full text PdfPdf (1.33 MB)
Source International Conference on Functional Programming archive
Proceedings of the first ACM SIGPLAN international conference on Functional programming table of contents
Philadelphia, Pennsylvania, United States
Pages: 262 - 273  
Year of Publication: 1996
ISBN:0-89791-770-7
Also published in ...
Authors
Dominic Duggan  Department of Computer Science, University of Waterloo, Waterloo, Ontario, Canada N2L 3G1
Constantinos Sourelis
Sponsor
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 2,   Downloads (12 Months): 27,   Citation Count: 24
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/232627.232654
What is a DOI?

ABSTRACT

Mixin modules are proposed as a new construct for module languages, allowing recursive definitions to span module boundaries. Mixin modules are proposed specifically for the Standard ML language. Several applications are described, including the resolution of cycles in module import dependency graphs, as well as functionality related to Haskell type classes and CLOS generic functions, though without any complications to the core language semantics. Mixin modules require no changes to the core ML type system, and only a very minor change to its run-time semantics. A type system and reduction semantics are provided, and the former is verified to be sound relative to the latter.


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
Andrew Appel and David MacQueen. Standard ML of New Jersey. In Proceedings of the Symposium on Programming Language implementation and Logic Programming, volume 528 of Lecture Notes in Computer Science, pages 1-13. Springer-Verlag, 1991.
2
3
 
4
Gilad Bracha and Gary Lindstrom. Modularity meets inheritance. In International Conference on Computer Languages, pages 282-290. IEEE, 1992.
 
5
R. M. Burstall. Design considerations for a functional programming language. In Infotech State of the Art Conference, Copenhagen, Denmark, 1977. Infotech.
6
7
 
8
Dominic Duggan. Polymorphic methods with self types for ML-like languages. Technical Report CS-95-03, University of Waterloo, Department of Computer Science, 1995.
 
9
Dominic Duggan and Frederick Bent. Explaining type inference. Technical Report CS-94-14, University of Waterloo, Waterloo, Ontario, Canada, 1994. To appear in Science of Computer Programming.
 
10
Dominic Duggan and John Ophel. Kinded parametric overloading. Technical Report CS-94-35, University of Waterloo, Department of Computer Science, September 1994.
 
11
Dominic Duggan and John Ophel. On type-checking multiparameter type classes. To be submitted, 1995.
12
13
14
15
 
16
 
17
18
19
20
 
21
22
23
 
24
25
 
26
John Ophel. A polymorphic language with first-class modules. Australian Computer Science Communications, 17(1):422--430, February 1995.
 
27
 
28
Constantinos Sourelis. Mixin modules. Master's thesis, University of Waterloo, 1995.
29
 
30
Philip Wadler. Efficient compilation of pattern-matching. pages 78-103. Prentice-Hall, 1987. Chapter contributed to The implementation of Functional Programming Languages, Simon Peyton-Jones.
31
 
32
Andrew Wright and Matthias Felleisen. A syntactic approach to type soundness. Technical Report TR91-160, Rice University, April 1991.

CITED BY  24

Collaborative Colleagues:
Dominic Duggan: colleagues
Constantinos Sourelis: colleagues