ACM Home Page
Please provide us with feedback. Feedback
Whiteoak: introducing structural typing into java
Full text PdfPdf (339 KB)
Source
Conference on Object Oriented Programming Systems Languages and Applications archive
Proceedings of the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications table of contents
Nashville, TN, USA
SESSION: Language design table of contents
Pages 73-90  
Year of Publication: 2008
ISBN:978-1-60558-215-3
Also published in ...
Authors
Joseph Gil  Technion - Israel Institute of Technology, Haifa, Israel
Itay Maman  Technion - Israel Institute of Technology, Haifa, Israel
Sponsors
SIGPLAN: ACM Special Interest Group on Programming Languages
ACM: Association for Computing Machinery
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 23,   Downloads (12 Months): 204,   Citation Count: 1
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/1449764.1449771
What is a DOI?

ABSTRACT

This paper presents WHITEOAK: a JAVA extension that introduces structural type equivalence and subtyping into the language. We argue that structural subtyping addresses common software design problems, and promotes the development of loosely coupled modules without compromising type safety.

We discuss language design issues, including subtyping in face of self-referencing structural types, compile-time operators for computing the new types from existing ones, and the semantics of constructors and non-abstract methods in structural types. We describe implementation techniques, including the compile-time and run-time challenges that we faced (in particular, preserving the identity of objects). Measurement indicate that the performance of our implementation of structural dispatching is comparable to that of the JVM's standard invocation mechanisms.


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
 
2
3
4
 
5
 
6
7
 
8
9
 
10
K. B. Bruce and J. N. Foster. LOOJ: Weaving LOOM into Java. In Proceedings of the 18th European Conference on Object-Oriented Programming (ECOOP'04), pages 389--413, Oslo, Norway, June 14-18 2004.
11
 
12
13
 
14
15
 
16
 
17
W. Harrison, D. Lievens, and T. Walsh. Using recombinance to improve modularity. Technical Report 104 Software Structures Group, Trinity College Dublin, Dublin, Ireland, March 2007.
18
 
19
B. N. Jørgensen. Integration of independently developed components through aliased multi-object type widening. Journal of Object Technology, 3(11):55--76, 2004.
 
20
K. Läufer, G. Baumgartner, and V. F. Russo. Safe structural conformance for Java. The Computer Journal, 43(6):469--481, 2001.
 
21
 
22
23
 
24
25
 
26
N. Schärli, S. Ducasse, O. Nierstrasz, and A. P. Black. Traits: Composable units of behavior. In L. Cardelli, editor, Proc. of the 17th Euro. Conf. on OO Prog. (ECOOP'03), volume 2743 of LNCS, pages 248--274, Darmstadt, Germany, July 21--25 2003. Springer.
27
28