Download presentation
Presentation is loading. Please wait.
1
Jiazzi: New-Age Components for Old-Fashioned Java Sean McDirmid Matthew Flatt Wilson C. Hsieh School of Computing University of Utah
2
Java Components Not all components are objects Components should share classes
3
External Linking
5
Separate Compilation
11
Jiazzi Components
12
Imports
14
Exports
15
Signatures
17
Linking
19
Re-exports
21
Outline Introduction Advanced Features Demonstration of Expressiveness
22
Cyclic Component Linking
24
Mixin Constructions
26
Outline Introduction Advanced Features Demonstration of Expressiveness
27
Outline Jiazzi: components for Java Demonstration of expressiveness Key features of Jiazzi
28
An Extensibility Problem
36
A Solution
40
Open Class Pattern
51
Outline Jiazzi: components for Java Demonstration of expressiveness Key features of Jiazzi
52
Cyclic Component Linking
53
Mixin Constructions
56
Pragmatics Separates core and component languages Operates on class files Executes on Java Virtual Machines See our poster
57
Some Related Work Program Units –[Flatt et al., POPL ‘98] MultiJava –[Millstein et al., OOPSLA ‘00] Mixin Modules –[Duggan and Techaubol OOPSLA ‘01]
58
Summary Separate compilation External linking Cyclic linking Mixin constructions http://www.cs.utah.edu/plt/jiazzi
59
Inheritance Cycles
60
Methods Collisions
61
Cyclic Component Linking
64
Mixin Constructions
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.