Skip to main content

Generation of dataflow graphical object code for the lapse programming language

  • Programming Languages Which Support Parallelism
  • Conference paper
  • First Online:
Conpar 81 (CONPAR 1981)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 111))

Included in the following conference series:

Abstract

Of the many proposals for parallel computer architectures, dataflow systems offer perhaps the greatest potential parallelism at the hardware level. However, it is unreasonable to expect users to exploit this parallelism at such a low level, and it is necessary to provide high level programming facilities which allow the user the abstract freedom of expression he requires, whilst permitting efficient use of the hardware. It has been noticed that single-assignment languages are particularly well-suited to dataflow machines, yet exhibit most of the familiar, useful features of conventional high level languages. This paper considers some aspects of code generation from the single-assignment language Lapse for the Manchester prototype dataflow computer. The syntax of Lapse, which resembles Pascal, is introduced, and code generation templates are presented. Some possible optimisations of flowgraph code are discussed, particularly in the implementation of arrays.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Ackerman W.B. and Dennis J.B., VAL — A Value-Oriented Algorithmic Language, CSG Technical Report no.218, Lab. for Computer Science, M.I.T., June 1979.

    Google Scholar 

  2. Arvind and Gostelow K.P., A Computer Capable of Exchanging Processors for Time, Information Processing 77, North Holland, 1977, p849.

    Google Scholar 

  3. Arvind, Gostelow K.P. and Plouffe W., The Id Report: An Asynchronous Language and Computing Machine, Technical Report, Dept. of Information and Computer Science, Univ. of California, Irvine, May 1978.

    Google Scholar 

  4. Ashcroft E.A. and Wadge W.W., Lucid, a Nonprocedural Language with Iteration, Communications of the ACM, vol.20, no.7, July 1977, p519.

    Article  MATH  Google Scholar 

  5. Brent R.P., The Parallel Evaluation of Arithmetic Expressions in Logarithmic Time, in Traub J.F. (ed.), Complexity of Sequential and Parallel Numerical Algorithms, Academic Press, 1973, p83.

    Google Scholar 

  6. Catto A.J., Gurd J.R. and Kirkham C.C., Nondeterministic Dataflow Programming, Proc. ACM Int. Computing Symposium on Systems Architecture, March 1981.

    Google Scholar 

  7. Chamberlin D.D., The Single-Assignment Approach to Parallel Processing, AFIPS FJCC, vol.39, 1971, p263.

    Google Scholar 

  8. Dennis J.B. and Misunas D.P., A Preliminary Architecture for a Basic Data Flow Processor, Second IEEE Symposium on Computer Architecture, Jan. 1975, p126.

    Google Scholar 

  9. Dennis J.B., Misunas D.P. and Leung C.K., A Highly Parallel Processor Using a Data Flow Machine Language, CSG Memo no.134, Lab. for Computer Science, M.I.T., Jan. 1977.

    Google Scholar 

  10. Dijkstra E.W., A Discipline of Programming, ch11, p94, Prentice-Hall, 1976.

    Google Scholar 

  11. Glauert J.R.W., A Single Assignment Language for Data Flow Computing, M.Sc. Dissertation, Dept. of Computer Science, Univ. of Manchester, Jan. 1978.

    Google Scholar 

  12. Gurd J.R. and Watson I., Data Driven System for High Speed Parallel Computing, Computer Design, vol.19, no.6, June 1980, p91, and vol.19 no.7, July 1980, p97.

    Google Scholar 

  13. Jensen K. and Wirth N., Pascal User Manual and Report, Springer-Verlag, 1975.

    Google Scholar 

  14. Miller R.E. and Rutledge J.D., Generating a Data Flow Model of a Program, IBM Technical Disclosure Bulletin, vol.8, no.11, April 1966, p1550.

    Google Scholar 

  15. Miranker G.S., Implementation of Procedures on a Class of Data Flow Processors, IEEE Int. Conf. on Parallel Processing, Aug. 1977, p77.

    Google Scholar 

  16. Plas A., et. al., LAU System Architecture: A Parallel Data Driven Processor Based on Single Assignment, IEEE Int. Conf. on Parallel Processing, Aug. 1976, p293.

    Google Scholar 

  17. Tesler L.G. and Enea H.J., A Language Design for Concurrent Processes, AFIPS SJCC, vol.32, 1968, p403.

    Google Scholar 

  18. Warren D.H.D. and Pereira L.M., Prolog — the Language and its Implementation Compared with Lisp, SIGPLAN Notices, vol.12, no.8, Aug. 1977, p109.

    Article  Google Scholar 

  19. Watson I. and Gurd J.R., A Prototype Data Flow Computer with Token Labelling, AFIPS NCC, vol.48, June 1979, p623.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

W. Brauer P. Brinch Hansen D. Gries C. Moler G. Seegmüller J. Stoer N. Wirth Wolfgang Händler

Rights and permissions

Reprints and permissions

Copyright information

© 1981 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Gurd, J.R., Glauert, J.R.W., Kirkham, C.C. (1981). Generation of dataflow graphical object code for the lapse programming language. In: Brauer, W., et al. Conpar 81. CONPAR 1981. Lecture Notes in Computer Science, vol 111. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0105116

Download citation

  • DOI: https://doi.org/10.1007/BFb0105116

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-10827-6

  • Online ISBN: 978-3-540-38715-2

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics