Realisations for Non-Strict Languages

  • Chris Clack

Abstract

Parallel implementations of non-strict functional languages using graph reduction are all based on the following model:

  1. 1.

    The graph is held in one or more large heap memories (see below);

     
  2. 2.

    There are a number of processing agents each of which uses one or more (slightly modified) sequential abstract machines to execute a thread in order to evaluate some part of the graph to WHNF;

     
  3. 3.

    Threads that are not currently being executed reside in one or more thread pools — if they have not yet started evaluation, they are often called sparks (see below) and may reside in one or more separate spark pools;

     
  4. 4.

    Synchronisation is required whenever a thread requires the value of an expression that is currently being evaluated by another thread.

     

Keywords

Migration Flare Assure Posit Paral 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Copyright information

© Springer-Verlag London 1999

Authors and Affiliations

  • Chris Clack
    • 1
  1. 1.Department of Computer ScienceUniversity College LondonUK

Personalised recommendations