Advertisement

Parallele Implementierung einer funktionalen Programmiersprache auf einem Transputer-Mehrprozessor-System

  • Herbert Kuchen
  • Rita Loogen
Conference paper
Part of the Informatik-Fachberichte book series (INFORMATIK, volume 237)

Zusammenfassung

In dieser Arbeit wird die parallele Implementierung einer funktionalen Programmiersprache auf einem Transputer-Mehrprozessor-System beschrieben. Ein funktionales Programm wird zunächst in ein System von speziellen Funktionsdefinitionen, sogenannten seriellen Kombinatoren, übersetzt. Hierbei wird die auszunutzende implizite Parallelität explizit gemacht. Das System von seriellen Kombinatoren wird in Code für eine parallele abstrakte Maschine transformiert, die auf Graphreduktion basiert. Weiterhin werden einige Datenstrukturen der funktionalen Sprache vorgestellt und verglichen. Für einige Beispielprogramme werden hierzu die gemessenen Laufzeiten und Speedups angegeben.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Literatur

  1. [Be87]
    D.I. Bevan: Distributed Garbage Collection and Reference Counting, Conf. on Parallel Ar- chitectures and Languages Europe (PARLE), LNCS 258/259, Springer Verlag, 1987Google Scholar
  2. [BH86]
    G. Burn, C.L. Hankin, S.A. Abramsky: Strictness Analysis for Higher-Order Functions, Science of Programming 7, 1986Google Scholar
  3. [HG85]
    P. Hudak, B. Goldberg: Serial Combinators: Optimal Grains of Parallelism, Conf. on Functional Programming Languages and Computer Architectures, LNCS 201, Springer Verlag, 1985Google Scholar
  4. [Hu82]
    J. Hughes: Supercombinators, ACM Symp. on LISP and Functional Programming, 1982Google Scholar
  5. [Hu85]
    J. Hughes: Why Functional Programming Matters, internal report, Chalmers Institute of Technology, Göteborg, 1985Google Scholar
  6. [Jo84]
    Th. Johnsson: Efficient Compilation of Lazy Evaluation, SIGPLAN Notices 13(6), 1984Google Scholar
  7. [Jo85]
    Th. Johnsson: Lambda Lifting, Proc. Functional Programming Languages and Computer Architectures, LNCS 201, Springer Verlag, 1985Google Scholar
  8. [Ku89]
    H. Kuchen: Parallele Implementierung funktionaler Programmiersprachen auf einem OCCAM-Transputer-System unter besonderer Beräcksichtigung applikativer Datenstrukturen, Dissertation, RWTH Aachen, 1989, in VorbereitungGoogle Scholar
  9. [LK89]
    R. Loogen, H. Kuchen, K. Indermark, W. Damm: Distributed Implementation of Programmed Graph Reduction, PARLE Conf., LNCS 365, Springer Verlag, 1989Google Scholar
  10. [Lo89]
    R. Loogen: Parallele Implementierung funktionaler Programmiersprachen, Informatik-Fachberichte 232, Springer Verlag, 1989Google Scholar
  11. [My81]
    A. Mycroft: Abstract Interpretation and Optimizing Transformations for Applicative Programs, Ph.D. Thesis, Edinburgh, 1981Google Scholar
  12. [My84]
    E. Myers: Efficient Applicative Data Types, ACM Symp. on Principles of Programming Languages, 1984Google Scholar
  13. [Tu85]
    D.A. Turner: Miranda - A Non-Strict Functional Language with Polymorphic Types, LNCS 201, Springer Verlag, 1985Google Scholar
  14. [Wa71]
    C.P. Wadsworth: Semantics and Pragmatics of the Lambda Calculus, Ph. D. Thesis, Oxford, 1971Google Scholar
  15. [WW87]
    P. Watson, I.Watson: An Efficient Garbage Collection Scheme for Parallel Computer Architectures, PARLE Conf., LNCS 258/259, Springer Verlag, 1987Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1990

Authors and Affiliations

  • Herbert Kuchen
    • 1
  • Rita Loogen
    • 1
  1. 1.Lehrstuhl für Informatik IIRWTH AachenAachenDeutschland

Personalised recommendations