Hi Mikael, I'm writing directly to you (CC guile-devel) because I believe you originally implemented the low level traps in eval.c - please correct me if that's wrong.
I'm thinking about how to implement the ability to skip over the evaluation of an expression, and providing an easy interface for use in my Emacs front end, and wondering whether the existing continuation-based approach is really needed. The problem with the continuation approach (in other words, whenever the 'cheaptraps option is off) is that a continuation is set up before every trap call even though it won't be needed in most cases, and it seems to me that one could get similar function by passing the expression to evaluate into the trap handler and allowing the trap handler to modify it (either by side effect or by return, to be determined). If I'm right, it also follows that we could remove the 'cheaptraps option and use debug-objects unconditionally for these trap calls. Note that the trap handler remains free to save off its continuation itself, if that is useful. What do you think? Regards, Neil _______________________________________________ Guile-devel mailing list Guile-devel@gnu.org http://lists.gnu.org/mailman/listinfo/guile-devel