> Please move most of that to a separate function (which I guess will take the list, the op and the value to which to compare the list). Done, but since the default case of the switch needs the bytecode stream and execution stack to be at a different point than all of the other cases, the function needs the relevant pointers. > Similarly, here (and below), I'm wondering if we can't reduce the code duplication. They are now defined via a macro. > Furthermore, you might like to declare them static, so thecompiler is more likely to inline them. > Don't expose them in lisp.h, since they're only used in bytecode.c. Done. -- Graham Dobbins