[Soot-list] Shimple -> Continuation Passing Style

Patrick Lam plam at cs.mcgill.ca
Mon Jan 29 22:39:06 EST 2007


J Malcolm wrote:
> Chris Pickett <chris.pickett at mail.mcgill.ca> writes:
> 
>> I'm not sure, but Java is pretty complicated.  Maybe what you want to
>> do is create a toy SSA IR with SableCC, that looks like a stripped
>> down Shimple, and then write your own simple dataflow framework and
>> convert the toy SSA to a toy CPS IR.  Once you've got that figured
>> out, you'll have a better idea as to how you can approach Shimple.
> 
> Good idea, but I'd rather avoid even having to transform Java source all
> the way through to SSA on my own, probably the bulk of the toy CPS
> project.  Your suggestion would be a good way to experiment with SSA ->
> CPS, but I just want to avoid the extra development time.

Note that it's not going to be trivial to convert SSA to CPS if you're
using Shimple: dealing with a real programming language (rather than a
toy language) typically introduces quite a bit of overhead.  That's part
of the reason that my PhD thesis used a toy language (one that let me
write reasonably-sized programs, but still a toy language).

I'm just saying that it's going to require effort---probably more than
you think; real languages always do---not that it's impossible.

pat


More information about the Soot-list mailing list