Skip to main content

XASM- An Extensible, Component-Based Abstract State Machines Language

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1912))

Abstract

The Abstract State Machine (ASM) [16] approach has already proven to be suitable for large-scale specifications of realistic systems [18,9,22,34]. Due to the fact that the ASM approach defines a notion of executing specifications, it provides a perfect basis for a language, which can be used as a specification language as well as a high-level programming language. However, in order to upgrade to a realistic programming language, such a language must — besides other features — add a modularization concept to the core ASM constructs in order to provide the possibility to structure large-scale ASM-formalizations and to flexibly define reusable specification units. In this paper, the language Xasm, which stands for Extensible ASM, is presented. Xasm realizes a component-based modularization concept based on the notion of external functions as defined in ASMs. This paper also briefly describes the support environment of Xasm consisting of the Xasm-compiler translating Xasm programs to C source code, and the graphical debugging and animation tool.

formerly known as “Aslan”; the name has been changed because of a name conflict with another tool.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. M. Anlauff, A. Bemporad, S. Chakraborty, P.W. Kutter, D. Mignone, M. Morari, A. Pierantonio, and L. Thiele. From ease in programming to easy maintenance: Extending DSL usability with Montages. Technical Report84, Institute TIK, ETH Zürich, December 19999.

    Google Scholar 

  2. M. Anlauff, P. Kutter, and A. Pierantonio. Formal Aspects of and Development Environments for Montages. In M. Sellink, editor, 2nd International Workshop on the Theory and Practice of Algebraic Specifications, Workshops in Computing, Amsterdam, 1997. Springer.

    Google Scholar 

  3. M. Anlauff, P. Kutter, and A. Pierantonio. Enhanced control flow graphs in Montages. In A. Zamulin D.Bjoerner, M. Broy, editor, Perspective of System Informatics, volume 1755 of LNCS, pages 40–53, 1999.

    Chapter  Google Scholar 

  4. M. Anlauff, P.W. Kutter, A. Pierantonio, and Asuman Sünbül. Using domain-specific languages for the realization of component composition. In Proceedings Formal Approaches in Software Engineering FASE00, LNCS, 2000.

    Book  Google Scholar 

  5. M. Anlauff and A. Sünbül. An ASM specification of an elevator control system.1999.

    Google Scholar 

  6. M. Anlauff and A. Sünbül. Software architecture based composition of components. In GI-Workshop Sicherheit und Zuverlässigkeit software-basierter Systeme, 1999.

    Google Scholar 

  7. S. Bensalem, V. Ganesh, Y. Lakhnech, C. Muñoz, S. Owre, H. Rue\, J. Rushby, V. Rusu, H. Saïdi, N. Shankar, E. Singerman, and A. Tiwari. An overview of SAL. In C. Michael Holloway, editor, LFM 2000: Fifth NASA Langley Formal Methods Workshop, June 2000. to appear.

    Google Scholar 

  8. J. A. Bergstra and P. Klint. The ToolBus coordination architecture. In Ciancarini and Hankin [12], pages 75–88.

    Google Scholar 

  9. E. Börger and D. Rosenzweig. A Mathematical Definition of Full Prolog. In Science of Computer Programming, volume 24, pages 249–286. North-Holland, 1994.

    Article  MathSciNet  MATH  Google Scholar 

  10. E. Börger and J. Schmid. Composition and Submachine Concepts for Sequential ASMs. In P. Clote and H. Schwichtenberg, editor, Gurevich Festschrift CSL 2000, LNCS. Springer-Verlag, 2000. to Appear.

    Google Scholar 

  11. M. Chandy and J. Misra. Parallel Program Design: A Foundation. Addison-Wesley, Reading, MA, 1988.

    Google Scholar 

  12. Paolo Ciancarini and Chris Hankin, editors. Coordination and models, Proceedings of the first international conference, Cesena, Italy, number 1061 in LNCS. Springer Verlag, 1996.

    Google Scholar 

  13. G. Del Castillo. The ASM Workbench: an Open and Extensible Tool Environment for Abstract State Machines. In Proceedings of the 28th Annual Conference of the German Society of Computer Science. Technical Report, Magdeburg University, 1998.

    Google Scholar 

  14. Michel Goossens, Frank Mittelbach, and Alexander Samarin. The LATEX Compa-nion. Tools and Techniques for Computer Typesetting. Addison-Wesley, Reading, MA, USA, second edition, 1994.

    Google Scholar 

  15. F. Griffel. Componentware. dpunkt.verlag, 1998.

    Google Scholar 

  16. Y. Gurevich. Evolving Algebras 1993: Lipari Guide. In E. Börger, editor, Specification and Validation Methods, pages 9–36. Oxford University Press, 1995.

    Google Scholar 

  17. Y. Gurevich. May 1997 Draft of the ASM Guide. Department Technical Report CSE-TR-336-97, University of Michigan, 1997.

    Google Scholar 

  18. Y. Gurevich and J. Huggins. The Semantics of the C Programming Language. In E. Börger, H. Kleine Büning, G. Jäger, S. Martini, and M. M. Richter, editors, Computer Science Logic, volume 702 of LNCS, pages 274–309. Springer, 1993.

    Chapter  Google Scholar 

  19. J.K. Huggins and W. Shen. The static and dynamic semantics of C. In Local Proceedings of ASM2000, TIK Report Nr. 87, 2000.

    Google Scholar 

  20. P. W. Kutter, D. Schweizer, and L. Thiele. Integrating formal domain-specific language design in the software life cycle. In Current Trends in Applied Formal Methods, LNCS. Springer, October 1998.

    Google Scholar 

  21. P.W. Kutter and A. Pierantonio. Montages: Specifications of Realistic Programming Languages. Journal of Universal Computer Science, 3(5):416–442, 1997.

    MathSciNet  MATH  Google Scholar 

  22. P.W. Kutter and A. Pierantonio. The Formal Specification of Oberon. Journal of Universal Computer Science, 3(5):443–503, 1997.

    MATH  Google Scholar 

  23. L. Lamport. The temporal logic of actions. ACM TOPLAS, 16(3):872–923, 1994.

    Article  Google Scholar 

  24. Z. Manna and A. Pnueli. The Temporal Logic of Reactive and Concurrent Systems, Volume 1: Specification. Springer-Verlag, New York, NY, 1992.

    Google Scholar 

  25. W. May. Specifying complex and structured systems with evolving algebras. In M. Bidoit and M. Dauchet, editors, Proceedings of TAPSOFT’97: Theory and Prac-tice of Software Development, number 1214 in LNCS, pages 535–549, 1997.

    Google Scholar 

  26. John K. Ousterhout. Scripting: Higher level programming for the 21st century. IEEE Computer, 31(3):23–30, March 1998.

    Google Scholar 

  27. J.-G. Schneider and O. Nierstrasz. Scripting: Higher-level programming for component-based systems. In OOPSLA 1998, 1998. Tutorial.

    Google Scholar 

  28. Jean-Guy Schneider and Oscar Nierstrasz. Components, scripts and glue. In Leonor Barroca, Jon Hall, and Patrick Hall, editors, Software Architectures-Advances and Applications, pages 13–25. Springer, 1999.

    Google Scholar 

  29. N. Shankar. Symbolic Analysis of Transition Systems. In This volume.

    Google Scholar 

  30. Asuman Sünbül. Architectural Design of Evolutionary Software Systems. PhD thesis, Technical University Berlin, 1999. in preparation.

    Google Scholar 

  31. Clemens Szyperski. Component Software: Beyond Object-Oriented Programming. ACM Press and Addison-Wesley, New York, N.Y., 1998.

    Google Scholar 

  32. J. Teich, P.W. Kutter, and R. Weper. Description and simulation of microprocessor instruction sets using asms. In This volume.

    Google Scholar 

  33. Larry Wall and Randal L. Schwartz. Programming Perl. O’Reilly Associates, Inc., Sebastopol, CA, 1990.

    MATH  Google Scholar 

  34. C. Wallace. The Semantics of the Java Programming Language: Preliminary Version. Technical Report CSE-TR-355-97, EECS Dept., University of Michigan, December 1997.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2000 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Anlauff, M. (2000). XASM- An Extensible, Component-Based Abstract State Machines Language. In: Gurevich, Y., Kutter, P.W., Odersky, M., Thiele, L. (eds) Abstract State Machines - Theory and Applications. ASM 2000. Lecture Notes in Computer Science, vol 1912. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44518-8_6

Download citation

  • DOI: https://doi.org/10.1007/3-540-44518-8_6

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-67959-2

  • Online ISBN: 978-3-540-44518-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics