PLITS(ID:864/pli008)


for Programming Language In The Sky.

Feldman, University of Rochester NY  1979

A computational model for concurrency with communication via asynchronous message-passing.




Structures:
Related languages
PLITS => CSSA   Influence

References:
  • Feldman, J.A. "High Level Programming for Distributed Computing" view details Abstract: Programming for distributed and other loosely coupled systems is a problem of growing interest. This paper describes an approach to distributed computing at the level of general purpose programming languages. Based on primitive notions of module, message, and transaction key, the methodology is shown to be independent of particular languages and machines. It appears to be useful for programming a wide range of tasks. This is part of an ambitious program of development in advanced programming languages, and relations with other aspects of the project are also discussed.
          in [ACM] CACM 22(6) (Jun 1979) view details
  • Collier, W. W., review of Feldman 1979 view details Extract: Review
    What are the paradigms or "powerful ideas" of programming? Which of them contains inherent incompatibilities? Starting with these questions, the author and his co-workers on the PLITS (Programming Language in the Sky) project at the University of Rochester concluded that only two are inherently difficult to combine effectively: parallelism and data sharing. Their solution to this conflict (and to other problems of distributed systems) is via three constructs: modules, messages, and assertions. Data is bound to the programs which use it; the union of such data and programs is a module. A message consists of a set of name-value pairs where a name is any string of characters.
    Names are declared to the system and are the only elements in PLITS which are shared, so that all data sharing is solely via messages. Assertion statements are needed for optimization, debugging, error and exception handling, and queue management, etc. To achieve this level of function, a compiler as sophisticated as the best artificial intelligence program is required and is appropriate to develop now.
    The author declines to confront some serious problems. For example, his response to the problems of deadlock, flooding, and starvation is to suggest that sufficient function has been defined to enable the user to avoid these problems. Still, this paper is a valuable contribution. The author asks the right questions, surveys current language developments, designs and implements distributed systems, and offers in some detail his perception of the most profitable direction for further research in distributed system design.
    W. W. Collier, Poughkeepsie, N.Y.
          in ACM Computing Reviews 21(02) Feb 1980 view details