Skip to main content

Structuring a Compiler with Active Objects

  • Conference paper
Modular Programming Languages (JMLC 2000)

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

Included in the following conference series:

  • 265 Accesses

Abstract

We present a concurrent compiler for Active Oberon built itself with active objects. We describe the experience made on parallelizing the Oberon compiler, in particular explaining how concurrency and synchronization are achieved by using active objects, and showing how we achieved ensured deadlock freedom. Based on the implementation, we discuss why we consider active objects beneficial for the implementation of software frameworks and where their limitations are.

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

Access this chapter

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

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Appel, A.W.: Modern Compiler Implementation In Java, basic techniques. Cambridge University Press, Cambridge (1997)

    MATH  Google Scholar 

  2. Crelier, R.: OP2: A portable oberon compiler (vergriffen). Technical Report 1990TR-125, Swiss Federal Institute of Technology, Zurich (February 1990)

    Google Scholar 

  3. Fischer, C.N.: On parsing Context-Free Languages in Parallel Environments. PhD thesis, Department of Computer Science, Cornell University (1975)

    Google Scholar 

  4. Fröhlich, P.: Projekt froderon: Zur weiteren entwicklung der programmiersprache oberon-2. Master’s thesis, Fachhochschule München (1997)

    Google Scholar 

  5. Griesemer, R.: A Programming Language for Vector Computers. PhD thesis, ETH Zürich (1993)

    Google Scholar 

  6. Gross, T., Zobel, A., Zolg, M.: Parallel compilation for a parallel machine. ACM SIGPLAN Notices 24(7), 91–100 (1989)

    Article  Google Scholar 

  7. Gutknecht, J.: Do the fish really need remote control? A proposal for self-active objects in oberon. In: Chin, R., Naiman, A., Pong, T.-C., Ip, H.H.-S. (eds.) ICSC 1995. LNCS, vol. 1024. Springer, Heidelberg (1995)

    Google Scholar 

  8. Gutknecht, J.: One-pass compilation at its limits — A Modula-2 compiler for the Xerox Dragon computer. Software Practice and Experience 17(7), 469–484 (1987)

    Article  Google Scholar 

  9. Knuth, D.E.: A history of writing compilers. Computers and Automation 11(12), 8–14 (1962)

    Google Scholar 

  10. Muller, P.: A multiprocessor kernel for active object-based systems. In: Proc. of Joint Modular Languages Conference (JMLC 2000). Springer, Heidelberg (2000)

    Google Scholar 

  11. Raymond, E.S.: The Cathedral & the Bazaar: Musings on Linux and Open Source by an Accidental Revolutionary. O’Reilly & Associates, Inc. (1999)

    Google Scholar 

  12. Schell Jr., R.M.: Methods for Constructing Parallel Compilers For Use in a Multiprocessor Environment. PhD thesis, University Of Illinois at Urbana-Champaign (1979)

    Google Scholar 

  13. Seshadri, V., Weber, S., Wortman, D.B., Yu, C.P., Small, I.: Semantic analysis in a concurrent compiler. In: Proceedings of the SIGPLAN 1988 Conference on Programming Language Design and Implementation, pp. 233–240 (1988)

    Google Scholar 

  14. Sheperd, J.C.: Why a two pass front end? SIGPLAN Notices 26(3), 88–94 (1991)

    Article  Google Scholar 

  15. Aho, A.V., Sethi, R., Ullman, J.D.: Compilers; Principles, Techniques and Tools. Addison-Wesley, Reading (1986)

    Google Scholar 

  16. Wirth, N.: The programming language oberon. Software Practice and Experience 18(7), 671–690 (1988)

    Article  MATH  Google Scholar 

  17. Wirth, N.: Compiler Construction. Addison-Wesley, Reading (1996)

    Google Scholar 

  18. Wirth, N., Reiser, M.: Programming in Oberon - Steps Beyond Pascal and Modula, 1st edn. Addison-Wesley, Reading (1992)

    MATH  Google Scholar 

  19. Wortman, D., Junkin, M.: Concurrent compiler for Modula-2+. ACM SIGPLAN Notices 27(7), 68–81 (1992)

    Article  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

Reali, P. (2000). Structuring a Compiler with Active Objects. In: Weck, W., Gutknecht, J. (eds) Modular Programming Languages. JMLC 2000. Lecture Notes in Computer Science, vol 1897. Springer, Berlin, Heidelberg. https://doi.org/10.1007/10722581_20

Download citation

  • DOI: https://doi.org/10.1007/10722581_20

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-67958-5

  • Online ISBN: 978-3-540-44519-7

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics