Why the hell is the third argument to ERROR (eg. 'fail-act) tested for eq-ness? Seems to me that one could just execute the symeval of the handler, invalidating no current code, and allowing a user to define his own error handlers without screwing up system handlers.