[TYPES] CPS and accumulators

Matthias Felleisen matthias at ccs.neu.edu
Wed Aug 19 10:25:43 EDT 2009


On Aug 19, 2009, at 2:21 AM, Giuseppe Maggiore wrote:

> ... all we need is a way to generate tail recursive code to find all  
> those hidden dependencies between computations ...

The above appears to be your central sentence. But it contains two  
distinct ideas:

  -- generate TR code, which is about code generation and the  
organization of the compiler's intermediate stages ("middle end"); and

  -- find (hidden) dependencies, which concerns the analysis of source  
code to predict the flow of values before you even run the program.

There is indeed a relationship between these two but not necessarily  
the one that your English connective phrase "to find all those" implies.

Before I send you off on a wild-goose chase, what is the real purpose  
of your project? Write the analysis component for a compiler so that  
you can ship come of the code to the GPU? Write the intermediate  
representation? (CPS? ANF? In between?) Connect the latter to the  
former? (See a paper in the upcoming ICFP on just this issue.) Or an  
entire high-performing parallelizing compiler? (Which is usually a  
project for several people over several years).

All the best -- Matthias




More information about the Types-list mailing list