[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Function cells

CAR is not a constant because it is microcoded. CAR is (can be legally)
microcoded because it is a constant. Get the difference?

The problem you pose could come up in the LMI software where a user
can make a (DEFUN FOO ...) turn into a %MISC instruction opcode
by using the microcompiler, but should be avoided by having redefined
%MISC instructions trap back to macrocode. The hard part is that
the actual number of arguments to the call is lost in the translation
to order-code, and klugely recovered by groveling through the debugging
info for the FEF being executed. The real problem is allocating the
limited opcode space, which right now is on a first-come-first-served
basis. (Microcompiled function need but turn into %MISC's but it is the
most efficient thing to turn into).