Open Access
Language concepts and design patterns
Uwe Assmann,Andreas Heberle,Welf Loewe,Andreas Ludwig,Rainer Neumann +4 more
- 01 Jan 2001
TL;DR: It is claimed that language concepts and design patterns are essentially the same, which helps software developers to correctly apply patterns in any language and helps the language designer to decide which patterns to put into the language core.
read more
Abstract: Programming languages aim at the construction of simple but expressive programs. To achieve this, plenty of language concepts have arisen over time. Design patterns aim at the solution of common design problems. To achieve this, plenty of approved design concepts have been collected. We claim that language concepts and design patterns are essentially the same. Indeed, a language may o er a design pattern as a language concept; we call such patterns language patterns. A design pattern can be implemented in terms of other design or language patterns. Since a concrete programming language only supports a subset of language patterns, every other pattern must be expressed in terms of this subset. We call such an implementation a workaround. The speci cation of a workaround imposes proof obligations: it must be shown that a workaround simulates the pattern. Once proved correct, we can collect patterns and their workarounds in a trustworthy catalogue. This helps software developers to correctly apply patterns in any language and helps the language designer to decide which patterns to put into the language core. We demonstrate this pattern integration process with well-known design patterns and concepts of object-oriented languages. Additionally, we list important language patterns together with their workarounds.
read more
Chat with Paper
AI Agents for this Paper
Find similar papers on Google Scholar, PubMed and Arxiv
Write a critical review of this paper
Analyze citations of this paper to find unaddressed research gaps
Citations
•Journal Article
The Origins and the Development of the ASM Method for High Level System Design and Analysis
TL;DR: The research belonging to the Abstract State Machines approach to system design and analysis is surveyed and documented in an annotated ASM bibliography and some lessons for the future of ASMs are drawn.
References
•Book
Design Patterns: Elements of Reusable Object-Oriented Software
Erich Gamma,Richard Helm,Ralph E. Johnson,John Vlissides +3 more
- 01 Jan 1994
TL;DR: The book is an introduction to the idea of design patterns in software engineering, and a catalog of twenty-three common patterns, which most experienced OOP designers will find out they've known about patterns all along.
24.8K
•Book
Pattern-Oriented Software Architecture
Peter Sommerlad,Hans Rohnert,Michael Stal,Frank Buschmann,Regine Meunier +4 more
- 01 Jan 1996
TL;DR: This study uses design patterns to present platform independent architecture to help extend the usability of any software system and provide structural notations for anySoftware system.
1.5K
•Book
Relationships between design patterns
Walter Zimmer
- 01 Sep 1995
TL;DR: This paper organizes the relationships between design patterns into different categories and revise the design patterns and their relationships, thereby making it easier to classify other design patterns, and to apply these design patterns to software development.
160
A catalogue of general-purpose software design patterns
W.F. Tichy
- 28 Jul 1997
TL;DR: This paper catalogues over 100 general-purpose design patterns, which includes older patterns such as Module and Layers as well as modern, object-oriented patternssuch as Observer and Visitor.
Related Papers (5)
Joseph A. DeVito
- 01 Jan 1973
Leonard Talmy
- 01 Jan 1996
Margaret Woodward
- 28 Oct 2014
Andy Dong
- 04 Dec 2008
Arus Kunkhet
- 10 Dec 2020