Are there any uses for this?
Scheme in Snap!, maybe?
I've never used Scheme, what does it do? And how is it related to Snap!
This reminded me of this project bh made.
One of our slogans is "Snap! is Scheme disguised as Scratch." That wasn't true in the beginning, when it was just Scratch plus build your own blocks. But over time we've been adding Scheme features (and not adding un-Scheme restrictions) so that now it's pretty much true. We added call-with-current-continuation back in 4.0 I think, 4.something anyway, and we have basically just added macros, although the UI leaves a lot to be desired and we have to tidy up scope of names (meta- scope of variables). That was The Last Feature, well, except for internal definitions, which poses a bunch of UI issues in a block language.
P.S. To be fair, it's also true that Snap! is Smalltalk disguised as Scratch. To a first approximation, the features I design come from Scheme and the features Jens designs come from Smalltalk. :~)