Paragon specifications: Structure, analysis and implementation
Paragon is a notation for specifying object behaviours using sets of rewrite rules, where rewriting is controlled by synchronous and asynchronous message passing, and where objects may be dynamically created as a rewriting side-effect. This paper overviews Paragon, and introduces a simple classification scheme for analysis of Paragon specifications. Restrictions on specifications are discussed in consideration of implementation feasibility and efficiency constraints. Implementation schemes based on the analysis and restrictions are defined. In particular, a translation strategy for static systems is detailed and motivated with a worked example. To reinforce the low-level nature of the derived implementation the translation is defined in terms of a digital hardware description language. Schemes for the implementation of general dynamic systems are also considered.
KeywordsPriority Queue Garbage Collection Asynchronous Message General Dynamic System Task Pool
Unable to display preview. Download preview PDF.
- 1.Paul Anderson and Peter Osmon. A Fault Tolerant Communications Architecture for Wafer Scale Integration. In Proceedings of the Alvey Technical Conference, pages 504–507, 1988. City University TCU/CS/1988/13.Google Scholar
- 2.H.P. Barendregt, M.C.J.D. van Eekelen, J.R.W. Glauert, J.R. Kennaway, M.J. Plasmeijer, and M.R. Sleep. Term graph rewriting. 1987. In [8, pages 141–158].Google Scholar
- 3.H.P. Barendregt, M.C.J.D. van Eekelen, J.R.W. Glauert, J.R. Kennaway, M.J. Plasmeijer, and M.R. Sleep. Towards an intermediate language for graph rewriting. 1987. In [8, pages 159–174].Google Scholar
- 4.D. Bolton, C.L. Hankin, and P.H.J. Kelly. An operational semantics for Paragon: A design notation for parallel architectures. New Generation Computing, 9:171–197, 1991.Google Scholar
- 5.David Bolton, Chris Hankin, and Paul Kelly. Parallel object-oriented descriptions of graph reduction machines (extended abstract). In PARLE'89 Parallel Architectures and Languages Europe, pages 158–175. Springer Verlag, 1989.Google Scholar
- 7.J.W. de Bakker, editor. Languages for Parallel Architectures. Parallel Computing. Wiley, 1989.Google Scholar
- 8.J.W. de Bakker, A.J. Nijman, and P.C. Treleaven, editors. Parle, Parallel Architectures and Languages Europe, volume I. Springer Verlag, June 1987. LNCS 258.Google Scholar
- 9.J.R.W. Glauert, J.R. Kennaway, and M.R. Sleep. Dactl: a computational model and compiler target language based on graph reduction. Report SYS-C87-03, school of Information Systems, University of East Anglia, 1987.Google Scholar
- 10.Inmos Ltd. Occam-2 Reference manual. Prentice Hall International, 1988.Google Scholar
- 11.David May and Catherine Keane. Compiling occam to silicon. Technical note 23, Inmos Ltd., 1000 Aztec West, Almondsbury, Bristol BS12 4SQ, UK., 1987.Google Scholar
- 12.Ph Schnoebelen and Ph Jorrand. Principles of FP2: Term Algebras for Specification of Parallel Machines. 1989. In [7, pages 223–273].Google Scholar
- 13.D.A. Turner. Miranda: A non-strict functional language with polymorphic types. In Functional Programming Languages and Computer Architecture, Nancy, France. Springer Verlag, 1985. LNCS 201.Google Scholar