|
ABSTRACT
Component programming techniques encourage abstraction and reuse through external linking. Some parts of a program, however, must use concrete, internally specified references, so a pure component system is not a sufficient mechanism for structuring programs. We present the combination of a static, internally-linked module system and a purely abstractive component system. The latter extends our previous model of typed units to properly account for translucency and sharing. We also show how units and modules can express an SML-style system of structures and functors, and we explore the consequences for recursive structures and functors.
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
|
Davide Ancona , Ferruccio Damiani , Sophia Drossopoulou , Elena Zucca, Polymorphic bytecode: compositional compilation for Java-like languages, Proceedings of the 32nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.26-37, January 12-14, 2005, Long Beach, California, USA
|
| |
2
|
|
| |
3
|
|
 |
4
|
|
| |
5
|
|
| |
6
|
H. Cejtin, M. Fluet, S. Jagannathan, and S. Weeks. Formal specification of the ML basis system. http://mlton. org/pages/MLBasis/attachments/mlb-formal.pdf, January 2005.
|
 |
7
|
Karl Crary , Robert Harper , Sidd Puri, What is a recursive module?, Proceedings of the ACM SIGPLAN 1999 conference on Programming language design and implementation, p.50-63, May 01-04, 1999, Atlanta, Georgia, United States
|
 |
8
|
|
 |
9
|
|
| |
10
|
|
 |
11
|
Derek Dreyer , Karl Crary , Robert Harper, A type system for higher-order modules, Proceedings of the 30th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.236-249, January 15-17, 2003, New Orleans, Louisiana, USA
|
 |
12
|
|
 |
13
|
|
 |
14
|
|
 |
15
|
|
 |
16
|
|
| |
17
|
T. Hirschowitz, X. Leroy, and J. B. Wells. Call-by-value mixin modules: Reduction semantics, side effects, types. In Proc. The European Symposium on Programming, 2004.
|
| |
18
|
S.P. Jones, editor. Haskell 98 Language and Libraries: The Revised Report. Cambridge University Press, 2003.
|
| |
19
|
R. Kelsey, J. Rees, and M. Sperber. Scheme48 Reference Manual, 1.3 edition, 2005. http://s48.org/1.3/s48manual.pdf.
|
 |
20
|
Xavier Leroy, Manifest types, modules, and separate compilation, Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.109-122, January 16-19, 1994, Portland, Oregon, United States
[doi> 10.1145/174675.176926]
|
| |
21
|
X. Leroy. The Objective Caml System, 3.08 edition, 2004. http://caml.inria.fr/pub/docs/manual-ocaml/index.html.
|
 |
22
|
|
| |
23
|
|
 |
24
|
Martin Odersky , Matthias Zenger, Scalable component abstractions, Proceedings of the 20th annual ACM SIGPLAN conference on Object oriented programming, systems, languages, and applications, October 16-20, 2005, San Diego, CA, USA
|
| |
25
|
|
 |
26
|
|
| |
27
|
M. Serrano. Bigloo: A "practical Scheme compiler", 2.6e edition, Aug. 2004. http://www-sop.inria.fr/mimosa/fp/Bigloo/doc/bigloo.html.
|
| |
28
|
D. Swasey, T. Murphy VII, K. Crary, and R. Harper. A separate compilation extension to Standard ML (working draft). Technical Report CMU-CS-06-104, School of Computer Science, Carnegie Mellon University, January 2006.
|
| |
29
|
D. Syme. Initializing mutually referential abstract objects: The value recursion challenge. In Proc. Workshop on ML, 2005.
|
| |
30
|
|
 |
31
|
|
| |
32
|
|
CITED BY 5
|
|
|
|
|
|
|
|
Peter Sewell , Francesco Zappa Nardelli , Scott Owens , Gilles Peskine , Thomas Ridge , Susmit Sarkar , Rok Strniša, Ott: effective tool support for the working semanticist, ACM SIGPLAN Notices, v.42 n.9, September 2007
|
|
|
|
|
|
|
|