skip to main content
10.1145/199448.199484acmconferencesArticle/Chapter ViewAbstractPublication PagespoplConference Proceedingsconference-collections
Article
Free Access

The semantics of future and its use in program optimization

Authors Info & Claims
Published:25 January 1995Publication History

ABSTRACT

The future annotations of MultiLisp provide a simple method for taming the implicit parallelism of functional programs. Past research concerning futures has focused on implementation issues. In this paper, we present a series of operational semantics for an idealized functional language with futures with varying degrees of intensionality. We develop a set-based analysis algorithm from the most intensional semantics, and use that algorithm to perform touch optimization on programs. Experiments with the Gambit compiler indicates that this optimization substantially reduces program execution times.

References

  1. 1.BAKER, H., AND HEWITT, C. The incremental garbage collection of processes. In Proceedings of the Symposium on Artzficzal Intelhgence and Programming Languages (1977), vol. 12(8), 55-59. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. 2.BBN ADVANCED COMPUTERS, INC., CAMBRIDGE, MA. Inszde the GPIO00. 1989.Google ScholarGoogle Scholar
  3. 3.CousoT, P., AND COUSOT, R. Abstract interpretation: A unified lattice model for static analyses of programs by consruction or approximation of fixpoints. In POPL (1977), 238-252. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. 4.CoUSOT, P., AND COUSOT, R. Higer order abstract interpretation (and application to comportment analysis generalizing strictness, termination, projection and per analysis of functional languages. ICCL (1994), 95-112.Google ScholarGoogle Scholar
  5. 5.DEUTSCH, A. ModUles Opdrationnels de Language de Programmation et Reprdsentations de Relations sue des Languages Rationnels avec Applicatzon a la Ddtermination Statique de Propridtes de Partages Dynamiques de Donnges. PhD thesis# Universite Paris VI, 1992.Google ScholarGoogle Scholar
  6. 6.FEELEY, IV{. An Efficient and General Implementation of Futures on Large Scale Shared-Memory Multiprocessots. PhD thesis, Department of Computer Science, Brandeis University, 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. 7.FEELEY# M., AND MILLER# J. S. A parallel virtual machine for efficient scheme compilation. In LFP (1990). Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. 8.FELLEISEN, M., AND FRIEDMAN, D. P. Control operators, the SECD-machine, and the Iambda-calculus. In 3rd Working Conference on the Formal Description of Programming Concepts (Aug. 1986), 193-219.Google ScholarGoogle Scholar
  9. 9.FLANAGAN, C., AND FELLEISEN, Yr. The semantics of Future. Rice University Comp. Sci. TR94-238.Google ScholarGoogle Scholar
  10. 10.FLANAGAN, C., AND FELLEISEN, M. Well-founded touch optimization of Parallel Scheme. Rice University Comp. Sci. TR94-239.Google ScholarGoogle Scholar
  11. 11.FLANAGAN, C., SABRY, A., DUBA, B. F., AND FELLEISEN# M. The essence of compiling with continuations. In PLDI (1993), 237-247. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. 12.HALSTEAD, R. Multilisp: A language for concurrent symbolic computataion. A CM Transactions on Programmzng Languages and Systems Z 4 (1985), 501-538. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. 13.HEINTZE, N. Set Based Program Analyszs. PhD thesis, Carnegie Mellon University, 1992. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. 14.HEINTZE, N. Set-based analysis of ML programs. In LFP (1994), 306-317. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. 15.HENGLEIN, F. Global tagging optimization by type inference. In LFP (1992), 205-215. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. 16.ITO, T., AND HALSTEAD, R., Eds. Parallel Lisp: Languages and Systems. Springer-Verlag Lecture Notes in Computer Science 441, 1989. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. 17.ITO, T., AND MATSUI, M. A parallel lisp language: Pailisp and its kernel specification. {16:58-100l.Google ScholarGoogle Scholar
  18. 18.JACANNATHAN, S., AND WEEKS, S. Analyzing stores and references in a parallel symbolic language. In LFP (1994), 294-305. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. 19.KATZ, M., AND WEISE, D. Continuing into the future: on the interaction of futures and first-class continuations. In LFP (1990). Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. 20.KESSLER, R.R., AND R. SWANSON. Concurrent scheme.Google ScholarGoogle Scholar
  21. 21.KNOPP, J. Improving the performance of parallel lisp by compile time analysis. {16:271-277}.Google ScholarGoogle Scholar
  22. 22.KrtANZ, D., HALSTEAD, R., AND MOHr#, E. Mul-T: A high-performance parallel lisp. {16:306-321}. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. 23.KRANZ, D., HALSTEAD, R., AND MOHR, E. Mul-T: A high-performance parallel lisp. In PLDI (1989), 81-90. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. 24.LEROY, X. Typage polymorphe d'un langage algorithm#que. PhD thesis, Universit# Paris 7, 1992.Google ScholarGoogle Scholar
  25. 25.MILLER, J. MultiScheme: A Parallel Processing System. PhD thesis, MIT, 1987.Google ScholarGoogle Scholar
  26. 26.MOHR, E., KRANZ, R., AND #IALSTEAD, R. Lazy task creation: A technique for increasing the granularity of parallel programs, in LFP (1990). Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. 27.MOREAU, L. Sound Evaluation of Parallel Functional Programs with Fwst-Class Continuations. PhD thesis, Universite de Liege, 1994.Google ScholarGoogle Scholar
  28. 28.REPPY, J.H. Hzgher-Order Concurrency. PhD thesis, Cornell University, Jan. 1992. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. 29.SABRY, A., AND FELLEISEN# M. Is continuation-passing useful for data flow analysis. In PLDI (1994), 1-12. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. 30.SHIVERS, O. Control-flow Analysis of Higher-Order Languages or Taming Lambda. PhD thesis, Carnegie- Mellon University, 1991. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. 31.SwANsoN, M., KESSLER, R.# AND LINDSTROM, G. An implementation of portable standard lisp on the BBN butterfly. In LFP (1988), 132-142. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. 32.WAND, M. Compiler correctness for parallel languages. Unpublished manuscript, 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. 33.WRIGHT, A. AND R. CARTWRIGHT. A practical soft type system for scheme. In LFP (1994), 250-262. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. The semantics of future and its use in program optimization

          Recommendations

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in
          • Published in

            cover image ACM Conferences
            POPL '95: Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
            January 1995
            415 pages
            ISBN:0897916921
            DOI:10.1145/199448

            Copyright © 1995 ACM

            Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

            Publisher

            Association for Computing Machinery

            New York, NY, United States

            Publication History

            • Published: 25 January 1995

            Permissions

            Request permissions about this article.

            Request Permissions

            Check for updates

            Qualifiers

            • Article

            Acceptance Rates

            Overall Acceptance Rate824of4,130submissions,20%

            Upcoming Conference

            POPL '25

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader