won't work, because 'map' isn't defined in this module. To make this work, I'd need to store the original source code for every function in each module's interface file, just in case someone later imported and reified it. But it seems a bit unpleasant for module boundaries to be significant in this way. I'm not sure what to do about this.
I'd be interested to know whether the same-module restriction would defeat the purposes for the "oh, how I wish I could" applications.
For the present application that I'm considering it for, not so much, although I can image it becoming a problem. The interface file problem is definitely something I can sympathise with but perhaps it's the only solution? What's the deal with MetaML where you can reify code at runtime? Does this mean you get the entire source code represented in the object code? Sean