Abstract
More than a basic aggregation of objects, a program can be modelled as a semantically rich structure of micro-components. In this paper, we study program construction, our starting point being the object-oriented framework requirements. We put under the lights the component form which matches our reuse goals - the ”lens” - and we show that it is possible to identify clearly the program structure as a set of ”semantic flows”. For example, in a graphical user interface, a drawing flow manages and orders the displayed components.
This program model enables complex, rich and free structuring. Prevented from unsound component adaptation or composition, the programmer is free to define his own structural flows.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
D. Ancona, G. Lagorio, and E. Zucca. Jam-a smooth extension of java with mixins. In ECOOP, pages 154–178, 2000.
D. Ancona and E. Zucca. A theory of mixin modules: Basic and derived operators. Mathematical Structures in Computer Science, 8(4):401–446, 1998.
D. Ancona and E. Zucca. A theory of mixin modules: Algebraic laws and reduction semantics, 1999.
M. Bchi and W. Weck. Generic wrappers. In ECOOP’ 2000-Object-Oriented Programming 14th European Conference, Sophia Antipolis and Cannes, France, pages 201–225. Springer-Verlag, 2000.
G. Bracha and W. Cook. Mixin-based inheritance. In N. Meyrowitz, editor, Proceedings of the Conference on Object-Oriented Programming: Systems, Languages, and Applications / Proceedings of the European Conference on Object-Oriented Programming, pages 303–311, Ottawa, Canada, 1990. ACM Press.
R. B. Findler and M. Felleisen. Behavioral interface contracts for java.
R. B. Findler and M. Flatt. Modular object-oriented programming with units and mixins. In Proceedings of the ACM SIGPLAN International Conference on Functional Programming (ICFP’ 98), volume 34(1), pages 94–104, 1999.
M. Flatt, S. Krishnamurthi, and M. Felleisen. Classes and mixins. In Conference Record of POPL 98: The 25TH ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, San Diego, California, pages 171–183, New York, NY, 1998.
E. Gamma, R. Helm, R. Johnson, and J. Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison Wesley, Massachusetts, 1994.
G. Kniesel. Type-safe delegation for run-time component adaptation. In R. Guerraoui, editor, ECOOP’ 99 — Object-Oriented Programming 13th European Conference, Lisbon Portugal, volume 1628, pages 351–366. Springer-Verlag, New York, NY, 1999.
B. Kucuk, M. Alpdemir, and R. Zobel. Customizable adapters for blackbox components, 1998.
S. Microsystems. java.sun.com, 2002.
L. Mikhajlov and E. Sekerinski. A study of the fragile base class problem. In E. Jul, editor, ECOOP’ 98 — Object-Oriented Programming, 12th European Conference, Brussels, Proceedings, volume 1445, pages 355–382. Springer-Verlag, 1998.
O. Nierstrasz and T. D. Meijler. Research directions in software composition. ACM Computing Surveys, 27(2):262–264, 1995.
C. Szyperski. Independently extensible systems-software engineering potential and challenges. In Proceedings of the 19th Australian Computer Science Conference, Melbourne, Australia, 1996.
W. Weck. Inheritance using contracts object composition. In ECOOP Workshops, pages 384–388, 1997.
W. Weck and C. Szyperski. Do we need inheritance?
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2002 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Fauthoux, D., Bahsoun, JP. (2002). From Lens to Flow Structure. In: Shafazand, H., Tjoa, A.M. (eds) EurAsia-ICT 2002: Information and Communication Technology. EurAsia-ICT 2002. Lecture Notes in Computer Science, vol 2510. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-36087-5_110
Download citation
DOI: https://doi.org/10.1007/3-540-36087-5_110
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-00028-0
Online ISBN: 978-3-540-36087-2
eBook Packages: Springer Book Archive