Functional programming for loosely-coupled multiprocessors / Paul Kelly.
By: Kelly, Paul (Paul H. J.) [author.].
Contributor(s): IEEE Xplore (Online Service) [distributor.] | MIT Press [publisher.].
Material type: BookSeries: Research monographs in parallel and distributed computing: Publisher: Cambridge, Massachusetts : MIT Press, 1989Distributor: [Piscataqay, New Jersey] : IEEE Xplore, [1989]Description: 1 PDF (253 pages) : illustrations.Content type: text Media type: electronic Carrier type: online resourceISBN: 9780262256520.Subject(s): Functional programming (Computer science) | MultiprocessorsGenre/Form: Electronic books.Additional physical formats: Print version:: No titleDDC classification: 004/.35 Online resources: Abstract with links to resource Also available in print.Summary: Recent progress in VLSI provides massive parallelism but general purpose parallel computers remain elusive due to limited communications performance. This book proposes a new high level approach to programming that addresses the pragmatic issue of how a computation is distributed across a machine.The book's approach is based on functional programming and has significant advantages over existing comparable approaches, extending the domain of functional programming to include computer architectures in which communication costs are not negligible. It looks at how high-level functional programming languages can be used to specify, reason about, and implement parallel programs for a variety of multiprocessor systems, but in particular a class of loosely coupled multiprocessors whose operation can be described by a process network In these networks the nodes correspond to processes and the arcs to communications channels.A simple language called Caliban is described in which the functional program text is augmented with a declarative description of how processes are partitioned and mapped onto a network of processing elements. The notation gains expressive power by allowing these annotations to be generated by predicates defined in the functional language. Thus, common communications structures have simple and concise definitions as "network forming operators." The main objective of these annotations is to provide an abstract description of the process network specified by the program so that an efficient mapping of processes to processors can be carried out by the compiler.Paul H. J. Kelly is Research Assistant in the Department of Computing at Imperial College, London Functional Programming for LooselyCoupled Multiprocessors is included in the series Research Monographs in Parallel and Distributed Computing, copublished with Pitman Publishing.Includes index.
Includes bibliographical references (p. 225-238).
Restricted to subscribers or individual electronic text purchasers.
Recent progress in VLSI provides massive parallelism but general purpose parallel computers remain elusive due to limited communications performance. This book proposes a new high level approach to programming that addresses the pragmatic issue of how a computation is distributed across a machine.The book's approach is based on functional programming and has significant advantages over existing comparable approaches, extending the domain of functional programming to include computer architectures in which communication costs are not negligible. It looks at how high-level functional programming languages can be used to specify, reason about, and implement parallel programs for a variety of multiprocessor systems, but in particular a class of loosely coupled multiprocessors whose operation can be described by a process network In these networks the nodes correspond to processes and the arcs to communications channels.A simple language called Caliban is described in which the functional program text is augmented with a declarative description of how processes are partitioned and mapped onto a network of processing elements. The notation gains expressive power by allowing these annotations to be generated by predicates defined in the functional language. Thus, common communications structures have simple and concise definitions as "network forming operators." The main objective of these annotations is to provide an abstract description of the process network specified by the program so that an efficient mapping of processes to processors can be carried out by the compiler.Paul H. J. Kelly is Research Assistant in the Department of Computing at Imperial College, London Functional Programming for LooselyCoupled Multiprocessors is included in the series Research Monographs in Parallel and Distributed Computing, copublished with Pitman Publishing.
Also available in print.
Mode of access: World Wide Web
Description based on PDF viewed 12/29/2015.
There are no comments for this item.