[PRL] syntax-directed translation to basic blocks?

Matthias Felleisen matthias at ccs.neu.edu
Tue May 2 04:25:39 EDT 2006


On Apr 29, 2006, at 8:07 PM, Dave Herman wrote:

> Is there such a thing as a syntax-directed translation of a program 
> into basic blocks? Obviously the challenge is the graph structure.
>
> In [Wand 83], Mitch gives a syntax-directed compilation (is that what 
> "transduction" means?) of an imperative language with loops into an 
> abstract assembly language. That takes care of cycles, but 
> interestingly, the translation seems to be unable to preserve sharing; 
> specifically, it duplicates the continuation of an `if' test.
>
> A translation into basic blocks should never duplicate a basic block. 
> Is there a functional way to express this translation with sharing?

1. You will need graphs to do this.

2. I re-posed this problem to Olin a few weeks ago. Ask him when you 
meet with him "-)

>
> Thanks,
> Dave
>
> [Wand 83] Mitchell Wand. Loops in Combinator-Based Compilers. POPL 
> 1983. http://doi.acm.org/10.1145/567067.567086
>
> _______________________________________________
> PRL mailing list
> PRL at lists.ccs.neu.edu
> https://lists.ccs.neu.edu/bin/listinfo/prl




More information about the PRL mailing list