Towards a Colimit-Based Semantics for Visual Programming
Software architects such as Garlan and Katz promote the separation of computation from coordination. They encourage the study of connectors as first-class entities,and superposition of connectors onto components as a paradigm for component-oriented programming. We demonstrate that this is a good model for what visual programming tools like IBM’s VisualAge actually do. Moreover,Fiadeiro and Maibaum’s categorical semantics of parallel programs is applicable to this model,so we can make progress towards a formal semantics of visual programming.
KeywordsDesign Pattern Software Architecture Categorical Semantic Formal Semantic Visual Program
Unable to display preview. Download preview PDF.
- 1.R. Allen and D. Garlan. A formal basis for architectural connection. ACM Transactions on Software Engineering Methodology,6(3),1997.Google Scholar
- 2.S. Bünnig, P. Forbrig, R. Lämmel,and N. Seemann. A programming language for design patterns. In Arbeitstagung Programmiersprachen, Paderborn, October 1999.Google Scholar
- 4.E. Gamma, R. Helm, R. Johnson,and J. Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley,1995.Google Scholar
- 5.J.A. Goguen. Categorical foundations of general systems theory. In F. Pichler and R. Trappl,editors, Advances in Cybernetics and Systems Research,pages 121–130. Transcripta,1973.Google Scholar
- 6.J. Gosling, B. Joy,and G. Steele. Java Language Specification. Addison-Wesley, 1996.Google Scholar
- 7.IBM. VisualAge for Java. http://www.ibm.com/software/ad/vajava.
- 8.B. Jacobs. Objects and classes,coalgebraically. In B. Freitag, C. B. Jones, C. Lengauer,and H.-J. Schek,editors, Object-Orientation with Parallelism and Persistence,pages 83–103. Kluwer,1996.Google Scholar
- 10.Sun Microsystems. JavaBeans specification. http://java.sun.com/products/javabeans/docs/spec.html,1997.
- 11.L. Mikhajlov and E. Sekerinski. A study of the Fragile Base Class problem. In European Conference on Object-Oriented Programming,pages 355–382,1998.Google Scholar
- 12.B.C. Pierce. Basic Category Theory for Computer Science. MIT Press,1991.Google Scholar
- 13.M. Shaw and D. Garlan. Software Architecture: Perspectives on an Emerging Discipline. Prentice-Hall,1996.Google Scholar
- 14.A. Snyder. Encapsulation and inheritance in object-oriented programming languages. In M. Meyrowitz,editor, Object-Oriented Programming, Systems, Languages and Applications,pages 38–45,1986. SIGPLAN Notices 21(11).Google Scholar
- 15.Y. V. Srinivas and R. Jüllig. SpecWare: Formal support for composing software. In Bernhard Möller,editor, LNCS 947: Mathematics of Program Construction. Springer-Verlag,1995.Google Scholar
- 16.Clemens Szyperski. Component Software: Beyond Object-Oriented Programming. Addison-Wesley,1998.Google Scholar