[Soot-list] Shimple -> Continuation Passing Style
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.
More information about the Soot-list