Download:
by Davide Ancona, Giovanni Lagorio, Elena Zucca
In 7th Intl. Workshop on Formal Techniques for Java-like Programs
http://www.macs.hw.ac.uk/DART/reports/D5.3/ALZ04.pdf
Add To MetaCart
Abstract:
Abstract. We present SmartJavaMod, a language of mixin modules constructed on top of the Java language supporting compositional compilation. More in detail, this means that basic modules are collections of Java classes which can be typechecked in isolation, inferring constraints on missing classes needed to safely reuse the module in any context. Furthermore, it is possible to write structured module expressions by means of a set of module operators and a type system at the module level ensures type safety, in the sense that we can always reduce a module expression to a well-formed collection of Java classes. What we obtain is a module language which is extremely flexible and allows to express (without any need of enriching the core level, that is, the Java language), a variety of constructs. 1
Citations
|
355
|
Mixin-based inheritance
– Bracha, Cook
- 1990
|
|
318
|
Featherweight Java: A Minimal Core Calculus for Java and GJ
– Igarashi, Pierce, et al.
- 1999
|
|
222
|
Classes and mixins
– Flatt, Krishnamurthi, et al.
- 1998
|
|
134
|
The Programming Language Jigsaw: Mixins, Modularity and Multiple Inheritance
– Bracha
- 1992
|
|
97
|
A calculus of module systems
– Ancona, Zucca
- 1999
|
|
87
|
Jiazzi: New-age components for old-fashioned Java
– McDirmid, Flatt, et al.
- 2001
|
|
76
|
What is a recursive module
– Crary, Harper, et al.
- 1999
|
|
74
|
The design of a class mechanism for Moby
– Fisher, Reppy
- 1999
|
|
67
|
Compatible genericity with run-time types for the Java programming language
– Cartwright, Steele
- 1998
|
|
62
|
A statically safe alternative to virtual types
– Bruce, Odersky, et al.
- 1998
|
|
50
|
A Core Calculus of Classes and Mixins
– Bono, Patel, et al.
- 1999
|
|
23
|
Polymorphic bytecode: Compositional compilation for Java-like languages
– Ancona, Damiani, et al.
- 2005
|
|
23
|
Classboxes: Controlling visibility of class extensions
– Bergel, Ducasse, et al.
- 2005
|
|
21
|
MultiJava: Design rationale, compiler implementation, and applications
– Clifton, Millstein, et al.
- 2004
|
|
19
|
True modules for Java-like languages
– Ancona, Zucca
- 2001
|
|
17
|
Jam—designing a Java extension with mixins
– Ancona, Lagorio, et al.
- 2003
|
|
15
|
Extending Moby with inheritance-based subtyping
– Fisher, Reppy
- 2000
|
|
14
|
Principal typings for Java-like languages
– Ancona, Zucca
- 2004
|
|
10
|
The expression problem revisited
– Torgersen
- 2004
|
|
7
|
LOOJ: Weaving LOOM into Java
– Bruce, Foster
- 2004
|
|
5
|
Mechanisms for secure modular programming in Java
– Bauer, Appel, et al.
- 1999
|
|
5
|
Towards type inference for Javascript
– Anderson, Giannini, et al.
- 2005
|