skip to main content
article
Free Access

Polylith: An environment to support management of tool interfaces

Published:25 June 1985Publication History
Skip Abstract Section

Abstract

Polylith is the name of a set of enhanced execution time system services along with development tools and an interfacing methodology.1 As a system, Polylith supports the reliable union of many component tools, addressing the problems of data interchange and synchronization between these tools. It facilitates reuse of code, and promotes the notion that construction of large programs should be viewed instead as orchestration of services. The Polylith is visible as a grammar in which instances of environments2 are precisely and rapidly specified; it is, through compilation and execution of assertions in that language, a medium through which many programs and tools can be united with impunity.

This paper presents an overview of the Polylith architecture, along with some brief remarks on the requirements analysis leading to Project Polylith at the University of Illinois. Section 2 presents this architecture, summarizing language and data transformation issues. Simple examples are included. Section 3 introduces one particular instance of an environment specified within Polylith called Minion. It is presented as an extended example, showing how the Polylith is utilized to construct an enthusiastic assistant for mathematical problem solving. The closing section contains some evaluation of how Polylith affects the task of environment development.

References

  1. 1 MACSYMA Reference Manual. The Mathlab Group, MIT LCS, 1977.Google ScholarGoogle Scholar
  2. 2 Dongarra, Jack J. "An Aid to Fortran Programming", Draft Paper and Personal Communication, Argonne National Laboratory, 1984.Google ScholarGoogle Scholar
  3. 3 Geddes, Keith O., Gaston H. Gonnet and Bruce W. Char. MAPLE User's Manual, Second Edition. University of Waterloo Computer Science Dept, CS-82-40, 1982.Google ScholarGoogle Scholar
  4. 4 Goldberg, Adele. Smalltalk-80: The Interactive Programming Environment. Addison Wesley, 1984. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. 5 Goldberg, Adele and David Robson. Smalltalk-80: The Language and Its Implementation. Addison Wesley, 1983. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. 6 Gosling, James. A Redisplay Algorithm. In: Proceedings of the ACM SIGOA Symposium on Text Manipulation, Victor B. Schneider, ed., 1981, pp. 123-129. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. 7 Habermann, N., R. Ellison, R. Medina-Mora, P. Feiler, D. Notkin, G. Kaiser, D. Garlan and S. Popovich. "The Second Compendium of Gandalf Documentation", Carnegie-Mellon University Dept of Computer Science Report, 1982.Google ScholarGoogle Scholar
  8. 8 Hewitt, Carl and Henry Baker. Laws for Communicating Parallel Processes. In: Proceedings of the IFIP Congress., 1977, pp. 987-992.Google ScholarGoogle Scholar
  9. 9 Mitchell, James G., William Maybury and Richard Sweet. Mesa Language Manual. Xerox PARC Systems Development Department, 1979.Google ScholarGoogle Scholar
  10. 10 Ng, E. W. A Study of Alternative Methods for the Symbolic Calculation of Elliptic Integrals. In: Proceedings of the 1976 ACM Symposium on Symbolic and Algebraic Computation, R. D. Jenks, ed., 1976, pp. 372-376. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. 11 Orailoglu, A. "Software Design Issues in the Implementation of Hierarchical, Display Editors", University of Illinois Dept of Computer Science, UIUCDCS-R-83-1139, Urbana, 1983.Google ScholarGoogle Scholar
  12. 12 Osterweil, Leon J. "The TOOLPACK Mathematical Software Development Environment", University of Colorado Dept of Computer Science, CU-CS-226-82, 1982.Google ScholarGoogle Scholar
  13. 13 Purtilo, James. "Computing Runge-Kutta Starters Symbolically", University of Illinois Dept of Computer Science, UIUCDCS-R-83-1120, Urbana, 1983.Google ScholarGoogle Scholar
  14. 14 Purtilo, James. "Polylith Architecture", University of Illinois Dept of Computer Science, UIUCDCS-R-84-1188, Urbana, 1984. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. 15 Purtilo, James. "Environments for Mathematical Computation", University of Illinois Dept of Computer Science, UIUCDCS-R-84-1135, Urbana, 1984.Google ScholarGoogle Scholar
  16. 16 Shilling, John. "The Fred User's Manual", University of Illinois Dept of Computer Science, UIUCDCS-R-84-l151, Urbana, 1984.Google ScholarGoogle Scholar
  17. 17 Stallman, Richard M. "EMACS: The Extensible, Customizable, Self-Documenting Display Editor", MIT Artificial Intelligence Lab, Memo 519, 1979. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. 18 Tichy, Walter F. Design, Implementation and Evaluation of a Revision Control System. In: Proceedings of IEEE 6th International Conference on Software Engineering., Tokyo, 1982. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. 19 Tichy, Walter F., "Software Development Control Based on System Structure Description", Carnegie-Mellon University, Report CMU-CS-80-120, 1980.Google ScholarGoogle Scholar
  20. 20 Weinreb, D. and D. Moon. "Flavors: Message Passing in the Lisp Machine", MIT Artificial Intelligence Lab, Memo 602, 1980.Google ScholarGoogle Scholar

Index Terms

  1. Polylith: An environment to support management of tool interfaces

      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

      Full Access

      • Published in

        cover image ACM SIGPLAN Notices
        ACM SIGPLAN Notices  Volume 20, Issue 7
        July 1985
        251 pages
        ISSN:0362-1340
        EISSN:1558-1160
        DOI:10.1145/17919
        Issue’s Table of Contents
        • cover image ACM Conferences
          SLIPE '85: Proceedings of the ACM SIGPLAN 85 symposium on Language issues in programming environments
          June 1985
          257 pages
          ISBN:0897911652
          DOI:10.1145/800225

        Copyright © 1985 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 June 1985

        Check for updates

        Qualifiers

        • article

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader