Static analysis of communication for asynchronous concurrent programming languages

  • Naoki Kobayashi
  • Motoki Nakade
  • Akinori Yonezawa
Contributed Papers
Part of the Lecture Notes in Computer Science book series (LNCS, volume 983)

Abstract

We propose an effect-based static analysis technique on communication for asynchronous concurrent programming languages. Our analysis gives an upper-bound of the number of enqueued messages and receivers for each communication channel, which can be used for compiletime optimizations for implementation of message passing. The main targets of our analysis are concurrent object-oriented languages, for which no formal static analysis method has been established.

Keywords

Communication Channel Message Passing Channel Region Static Analysis Method Typing Rule 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Agha, G., Actors: A Model of Concurrent Computation in Distributed Systems. MIT Press, 1986.Google Scholar
  2. 2.
    Andreoli, J.-M., R. Pareschi, and T. Castagnetti, “Abstract Interpretation of Linear Logic Programming,” in Proceedings of International Logic Programming Symposium, pp. 315–334, 1993.Google Scholar
  3. 3.
    Appel, A. W., Compiling with Continuations. Cambridge University Press, 1992.Google Scholar
  4. 4.
    Kobayashi, N., M. Nakade, and A. Yonezawa, “Static Analysis on Communication for Asynchrnous Concurrent Programming Languages,” Tech. Rep. 95-04, Department of Information Science, University of Tokyo, April 1995.Google Scholar
  5. 5.
    Kobayashi, N., and A. Yonezawa, “Asynchronous Communication Model Based on Linear Logic.” to appear in Journal of Formal Aspects of Computing, Springer-Verlag.Google Scholar
  6. 6.
    Kobayashi, N., and A. Yonezawa, “Type-Theoretic Foundations for Concurrent Object-Oriented Programming,” in Proceedings of ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA '94), pp. 31–45, 1994.Google Scholar
  7. 7.
    Kobayashi, N., and A. Yonezawa, “Higher-Order Concurrent Linear Logic Programming,” in Theory and Practice of Parallel Programming, vol. 907 of Lecture Notes in Computer Science, pp. 137–166, Springer Verlag, 1995.Google Scholar
  8. 8.
    Nielson, F., and H. R. Nielson, “Constraints for Polymorphic Behaviors of Concurrent ML,” in Proceedings of CCL'94, vol. 845 of Lecture Notes in Computer Science, pp. 73–88, Springer Verlag, 1994.Google Scholar
  9. 9.
    Nielson, H. R., and F. Nielson, “Higher-Order Concurrent Programs with Finite Communicationn Topology,” in Proceedings of ACM SIGACT/SIGPLAN Symposium on Principles of Programming Language, pp. 84–97, 1994.Google Scholar
  10. 10.
    Pierce, B., and D. Sangiorgi, “Typing and Subtyping for Mobile Processes,” in Proceedings of IEEE Symposium on Logic in Computer Science, pp. 376–385, 1993.Google Scholar
  11. 11.
    Pierce, B. C., “Programming in the Pi-Calculus: An Experiment in Programming Language Design.” Lecture notes for a course at the LFCS, University of Edinburgh., 1993.Google Scholar
  12. 12.
    Reppy, J. H., “CML: A Higher-order Concurrent Language,” in Proceedings of the ACM SIGPLAN'91 Conference on Programming Language Design and Implementation, pp. 293–305, 1991.Google Scholar
  13. 13.
    Sangiorgi, D., Expressing Mobility in Process Algebras: First-Order and Higher-Order Paradigms. PhD thesis, University of Edinburgh, 1992.Google Scholar
  14. 14.
    Talpin, J.-P., and P. Jouvelot, “Polymorphic type, region and effect inference,” Journal of Functional Programming, vol. 2, no. 3, pp. 245–271, 1992.Google Scholar
  15. 15.
    Talpin, J.-P., and P. Jouvelot, “The Type and Effect Discipline,” in Proceedings of IEEE Symposium on Logic in Computer Science, pp. 162–173, 1992.Google Scholar
  16. 16.
    Tang, Y.-M., and P. Jouvelot, “Effect systems with subtyping,” in ACM SIGPLAN Symposium on Partial Evaluation and Semantics-Based Program Manipulation (to appear), 1995.Google Scholar
  17. 17.
    Taura, K., S. Matsuoka, and A. Yonezawa, “An Efficient Implementation Scheme of Concurrent Object-Oriented Language on Stock Multicomputers,” in Proc. ACM Conf. on Principles and Practice of Parallel Programming (PPOPP), 1993.Google Scholar
  18. 18.
    Ueda, K., and M. Morita, “Moded Flat GHC and Its Message-Oriented Implementation Technique,” New Generation Computing, vol. 36, no. 3, pp. 3–43, 1994.Google Scholar
  19. 19.
    Yonezawa, A., and M. Tokoro, Object-Oriented Concurrent Programming. The MIT Press, 1987.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1995

Authors and Affiliations

  • Naoki Kobayashi
    • 1
  • Motoki Nakade
    • 1
  • Akinori Yonezawa
    • 1
  1. 1.Department of Information ScienceUniversity of TokyoTokyoJapan

Personalised recommendations