;squish ;KSET FONTS;25VG KST,FONTS;25FRI1 KST,FONTS;25FR KST,FONTS;SUB KST,FONTS;SUP KST,FONTS;S25GRK KST ;TOPMAR 145 ;BOTMAR 0 ;LFTMAR 0 ;VSP 6 ;SKIP 1 AStepper Documentation ADraft q1 A  mBASIC COMMANDS  A The‚STEPPER(i)‚is‚called‚on‚a‚FORM‚by‚(STEP‚FORM).‚ The‚STEPPER‚will‚process‚each‚argument Aexpression‚of‚the‚FORM‚in‚turn‚and‚then‚each‚toplevel‚SUBEXPRESSION‚in‚the‚FORM.(ii)‚ After‚an Aexpression(iii) is typed, then the STEPPER types A ==ok=>(iv) A This‚ prompt‚ indicates‚ that‚ the‚ user‚ should‚ type‚ some‚ COMMAND‚ to‚ specify‚ how‚ evaluation‚ is‚ to‚ be Aperformed. The last two pages of this document summarize all the COMMANDS. A The most interesting COMMANDS are "N", "V", "B", "Y" and (some integers). A a"N"‚(Nothing)‚means‚LISP‚EVALuate‚the‚expression‚and‚continue‚to‚the‚next A expression. A a"V" (Value) augments "N" by printing the result of the evaluation. A a"B"‚(Break)‚augments‚"V"‚by‚breaking‚after‚printing‚the‚value‚so‚that‚the‚user‚can A examine‚ and\or‚ change‚ the‚ state‚ of‚ the‚ world.‚ The‚ value‚ is‚ bound‚ to‚ the‚ atom‚ STEP-VALUE. A It may be setq'ed and thereby a changed answer will be returned. A The‚îabove‚three‚îCOMMANDS‚îevaluate‚the‚îexpression‚by‚îusing‚îthe‚garden‚îvariety‚evaluator‚îthat ALISP provides. A "Y"‚recursively‚calls‚the‚STEP‚mechanism‚on‚the‚current‚expression,‚as‚though‚the‚user‚had Aexplicitly‚ applied‚ the‚ STEP‚ function‚ to‚ the‚ current‚ expression.‚ Thus‚ the‚ user‚ may‚ further‚ control‚ and Aexamine the evaluation of the expression. A.................................................................. A(i) A compiled version of the STEPPER lives on "dsk:liblsp;stepr fasl". A(ii)‚ In‚ typing‚ out‚ the‚ expression,‚ the‚ STEPPER‚ indicates‚ an‚ evaluation‚ depth‚ which‚ corresponds‚ to‚ the Adepth of the expression in the functional composition. This depth is usually started at 1. A(iii) which will be bound to STEP-FORM A(iv)‚ This‚ is‚ a‚îREAD-EVAL-PRINT‚ loop‚ which‚ passes‚ reserved‚îatoms‚ back‚ to‚ the‚ STEPPER‚îproper.‚ Other Aatoms‚and‚all‚forms‚are‚evaluated‚and‚their‚values‚are‚displayed.‚ Any‚atom‚can‚be‚evaluated‚by Aprefixing it with a colon. A2 ADraft ^Stepper Documentation A ‚ will‚ cause‚ the‚ STEPPER‚ to‚ remain‚ quiet‚ until‚ recursion‚ pops‚ to‚ the‚ level‚ indicated‚ by Athat‚îinteger.‚î This‚ is‚îonly‚îgood‚îfor‚ unwinding.‚î You‚îcan‚înot‚ use‚îit‚îto‚îsilence‚ the‚îSTEPPER‚îuntil‚îa‚ lower A(numerically greater) depth is reached. A It‚is‚possible‚to‚precede‚any‚of‚the‚COMMANDS‚with‚a‚single‚numeric‚digit‚which‚serves‚as‚a Arepetition count. AStepper Documentation ADraft q3 A  HEURISTICS  A A‚ lot‚ of‚ the‚ FORMS‚ will‚ be‚ displayed‚ by‚ the‚ STEPPER‚ have‚ trivial‚ uninterresting‚ values.‚ Others‚ have Aautomatically‚"calculable"‚heuristic‚COMMANDS.‚ The‚user‚can‚specify‚what‚COMMAND‚to‚take‚for‚a Aparticular‚ form,‚ function,‚ (v),‚ or‚ atom.‚ The‚ function‚ HEUR‚ of‚ 2‚ N‚ arguments‚ enables‚ (or‚ disables)‚ the‚ use Aof heuristics). A (HEUR ...) AHEUR is a fexpr. A The first argument of each pair is some expression(vi). A The‚ second‚ argument‚ is‚ an‚ imperative‚ which‚ can‚ be‚ STEPPER‚ COMMANDS,‚ special‚ key‚ words,‚ or Afunctions.‚ The‚key‚word‚î"OFF"‚means‚nullify‚the‚îimperative‚for‚this‚expression.‚"DEFAULT"‚îmeans Aprint the imperative for this expression. A Any‚ of‚ the‚ STEPPER‚ COMMANDS‚ can‚ be‚ used‚ as‚ a‚ simple‚ heuristic.‚ In‚ this‚ case,‚ it‚ is‚ as‚ though‚ the Auser‚ had‚ typed‚ that‚ COMMAND‚ explicitly‚ in‚ response‚ to‚ the‚ prompt,‚ though‚ neither‚ the‚ expression‚ nor Athe prompt will be displayed. A The‚ imperative‚ can‚ also‚ be‚ an‚ "ACTIVE‚ DAEMON".‚ If‚ the‚ imperative‚ is‚ non‚ atomic,‚ then‚ its‚ car Ais‚îassumed‚to‚îbe‚a‚îfunction.‚This‚îfunction‚is‚îcalled‚with‚îthe‚expression‚î(STEP-FORM)‚being‚îexamined Aand‚îthe‚îimperative‚itself‚îas‚îarguments‚î(hence‚you‚îcan‚îstore‚stuff‚îin‚îthe‚îCDR‚or‚îhave‚îa‚free‚îlambda Avariable). The value that the function returns is considered to be a simple COMMAND as treated above. A This‚function‚can‚perform‚stylized‚print‚out,‚get‚information‚from‚the‚user,‚or‚even‚compute‚a Avalue to be returned for the expression and skip LISP evaluation of it. A.................................................................. A(v) A form is considered here as a function applied to some particular arguments. A(vi)‚ Heuristics‚ on‚ FORMS‚ only‚ apply‚ to‚ EQ‚ FORMS.‚ To‚ get‚ around‚ the‚ problem‚ of‚ having‚ to‚ apply‚ HEUR‚ to Athe‚îactual‚îexpression,‚ a‚înumber‚îcan‚ be‚îused‚îto‚ represent‚îthe‚îFORM‚ at‚îsome‚îSTEPPER‚îdepth.‚ Positive Anumbers‚are‚absolute.‚Zero‚and‚negative‚numbers‚are‚relative‚to‚the‚current‚depth;‚hence‚zero Arepresents the form at the current depth. A4 ADraft ^Stepper Documentation A There‚ are‚ "LEASHED‚ DAEMONs"‚ as‚ well.‚ These‚ are‚ functions‚ that‚ the‚ user‚ would‚ invoke‚ in‚ response Ato‚the‚==ok=>‚prompt.‚î They‚can‚behave‚in‚îexactly‚the‚same‚manner‚îas‚the‚"ACTIVE‚DAEMONS".‚î The Amajor‚îdifference‚îbeing‚îthat‚îthe‚îFORM‚îhas‚îalready‚ been‚îtyped‚îand‚îthe‚îuser‚îis‚îin‚îthe‚ READ-EVAL-PRINT Aloop. A There‚îis‚îa‚îspecial‚îCOMMAND‚î"ASK"‚îwhich‚îmeans‚îthat‚îthe‚îuser‚îshould‚îbe‚îspecifically‚îasked‚for‚îa ACOMMAND.‚ This‚causes‚the‚ default‚mechanism‚(which‚is‚îgenerally‚used‚if‚no‚daemon‚is‚found),‚to‚îbe Aignored. A  "CHECKING  A The‚ STEPPER‚ can‚ be‚ made‚ to‚ run‚ "silently"‚ until‚ a‚ certain‚ condition‚ is‚ met.‚ This‚ is‚ one‚ way‚ to‚ have Ait‚ go‚ down‚ to‚ a‚ particular‚ level.‚ The‚ STEPPER‚ is‚ made‚ to‚ apply‚ a‚ series‚ of‚ checks‚ at‚ every‚ atom‚ and\or AFORM‚evaluation.‚If‚any‚are‚true,‚the‚user‚will‚be‚so‚informed.‚ The‚checks‚can‚obviously‚monitor‚the Astate of the world, etc. Not merely the FORM being evaluated. A The‚ function‚ STEP-PREDS(vii)‚ may‚ be‚ used‚ to‚ specify‚ a‚ list‚ of‚ predicates‚ to‚ be‚ tested.‚ Successive Acalls‚augment‚the‚list.‚ Once‚some‚set‚of‚predicates‚have‚been‚declared‚checking‚can‚be‚enabled‚by Acalling an appropriate function (see below) in the READ-EVAL-PRINT loop of the STEPPER. A There‚are‚three‚variants‚of‚checking:‚ one‚allows‚normal‚use‚of‚the‚STEPPER,‚but‚you‚will‚be Ainformed‚if‚the‚condition‚comes‚true‚(WATCH).‚The‚other‚two‚silence‚the‚STEPPER‚until‚the‚condition Abecomes‚true.‚ The‚difference‚is‚that‚the‚one‚(STEP-SILENT)‚allows‚all‚values‚and‚expressions‚being Acomputed‚ to‚ be‚ examined‚ after‚ the‚ condition‚ becomes‚ true.‚ Whereas‚ the‚ other‚ (STEP-SILENT‚ FAST)‚ does Anot allow access to these past values and expressions. A Suppose‚î(STEP-SILENT‚xx)‚îis‚îcalled‚at‚îdepth‚I‚îand‚îthe‚condition‚îis‚met‚îat‚îdepth‚J.‚î If‚"FAST"‚îis Agiven‚îthen‚ it‚îwill‚înot‚ be‚îpossible‚îto‚ see‚îthe‚îvalues,‚ or‚îperform‚îcontrol‚ at‚îdepth's‚îI‚ thru‚îJ‚îuntil‚ control Aonce passes above level I. A different dispatcher is used which is faster but which loses this information. A.................................................................. A(vii) (STEP-PREDS ...) the function is a fexpr. AStepper Documentation ADraft q5 A NOTE:‚ Checking‚ can‚ slow‚ evaluation‚ down‚ very‚ much.‚ If‚ you‚ want‚ to‚ apply‚ the‚ STEPPER‚ only‚ when Asome function is called try tracing that function with the STEP COMMAND. A6 ADraft ^Stepper Documentation A  OTHER THINGS YOU SHOULD KNOW  A If there is a file named STEP (INIT) on your directory, it will be LOADED with the STEPPER. A At‚îall‚îtimes‚îthe‚îFORM‚îbeing‚îprocessed‚îcan‚îbe‚îreferenced‚îas‚î"STEP-FORM".‚î It‚îis‚îalso‚îpossible‚îto Areplace the FORM i.e. RPLAC it by the function "STEP-FORM" given the new FORM. A At‚ BREAKS‚ the‚ value‚ just‚ computed‚ can‚ be‚ referenced‚ as‚ STEP-VALUE.‚ It‚ can‚ be‚ replaced‚ by‚ the Afunction "STEP-VALUE" given an alternate value or by directly SETQ'ing STEP-VALUE. A "STEP-F"‚ of‚ one‚ argument‚ displays‚ the‚ FORM‚ at‚ that‚ level;‚ no‚ argument‚ is‚ equivalent‚ to‚ the‚ current Adepth. A "STEP-V" displays values analagously to "STEP-F" A (REEVALUATE) A (STEP-FORM) A (STEP-VALUE) A (STEP-FUN) A (STEP-OP) AStepper Documentation ADraft q7 A  1PASS II  A STEP‚can‚be‚called‚at‚any‚time;‚even‚while‚the‚STEPPING‚through‚some‚FORM‚already.‚ In Aparticular, A a(STEP) will re-STEP using the argument given to the last call to STEP A a(STEP
) will STEP as usual A a(STEP T) starts STEPPING with the current FORM A a(STEP ) starts with the FORM at the specified depth. A a(SEVAL‚ )‚ is‚ an‚ expr‚ version‚ of‚ the‚ stepper.‚ It‚ evaluates‚ the‚ A to get a form, and effectively applies STEP to the list of that form. A The‚ STEPPER‚ is‚ "reentrant".‚ If‚ STEPPING‚ is‚ already‚ in‚ progress,‚ further‚ calls‚ to‚ "STEPS"‚ are‚ just Afor‚show.‚ They‚do‚not‚effect‚the‚value‚being‚computed.‚ Further,‚when‚the‚value‚is‚returned,‚the Aprevious invocation of the STEPPER is left in the same state as it was in before the call. A There are a few more COMMANDS available. A a"I"‚is‚used‚to‚ignore‚the‚expression‚and‚allow‚the‚user‚to‚supply‚an‚alternate A expression to EVAL in LISP. A a"A"‚ evaluates‚ all‚ the‚îarguments‚ of‚ some‚ FORM‚ and‚îthen‚ breaks‚ before‚ the‚îfunction‚ is A applied to the argument list. The body is STEPPED through afterwards as with "Y". A a"M"‚îconsider‚îSTEP-FORM‚îto‚îbe‚îa‚îmacro‚ and‚îevaluate‚îit‚îonce‚îusing‚îEVAL.‚î The‚ result A becomes STEP-FORM and the user is placed back in the READ-EVAL-PRINT loop. A At‚îuser‚îinvoked‚îbreaks‚î("Y",‚î"B")‚î[called‚îPOSTVIEWS]‚ it‚îis‚îpossible‚îto‚îtell‚îthe‚îSTEPPER‚îto‚ return A8 ADraft ^Stepper Documentation Asilently‚îto‚ a‚îdepth‚ level‚îor‚îto‚ the‚înext‚ evaluation‚îby‚îreturning‚ the‚înumber‚ or‚îT‚îrespectively(viii)‚ rather Athan $P. A The‚ STEPPER‚ tries‚ to‚ be‚ clever‚ about‚ not‚ printing‚ a‚ returned‚ value‚ too‚ often.‚ In‚ response‚ to‚ the AY‚COMMAND,‚the‚îsystem‚displays‚the‚îexpression,‚recurses,‚and‚îthen‚breaks‚the‚îfirst‚time‚a‚value‚îis Acalculated.‚ All‚ encompassing‚ FORMS‚îthat‚ return‚ the‚ same‚îvalue‚ without‚ change‚ or‚îfurther‚ computation, Aprint nothing(ix). The first time a changed value is returned, the expression and value are printed, etc. A There‚ are‚ "recursive‚ analogues"‚ of‚ the‚ "N",‚ "V",‚ and‚ "B"‚ COMMANDS‚ which‚ use‚ STEPPER‚ evaluation A(like‚î"Y").‚ These‚îCOMMANDS‚ are‚î"R",‚ "D",‚îand‚ "C",‚îrespectively.‚ This‚îsort‚ of‚îexplicit‚ control‚îshould‚ not Abe necessary. A  HEURISTICS  A HEUR‚ of‚ no‚ arguments‚ sets‚ up‚ some‚ basic‚ heuristic‚ for‚ LAMBDA,‚ NIL,‚ QUOTE,‚ etc.‚ It‚ is‚ called‚ during ASTEPPER loading. A The function "HEUR" can be called with a single argument to achieve housekeeping functions. AARGUMENT ASEMANTICS AOFF Aturn off all heuristics on atoms and functions AOFFFORMS Aturn off all heuristics on FORMS ALIST Alist all the atoms and functions with heuristics ALISTFORMS Alist all the FORMS with heuristics AATOMDEAULT Adisplay the atom default AFUNCTIONDEFAULT Adisplay the function default AFORMDEFAULT Adisplay the FORM default AMACRODEFAULT Adisplay the macro default A The latter four COMMANDS may also be reset with the two argument call to HEUR. A.................................................................. A(viii) i.e. (RETURN ) or (RETURN T) A(ix) Well almost nothing. In fact, whenever a user function is exited a message is printed to that effect. AStepper Documentation ADraft q9 A HEUR‚ calls‚ HEUR-TUPLE‚ with‚ each‚ EXPRESSION,‚ IMPERATIVE‚ pair.‚ (HEUR-TUPLE‚ x‚ y)‚ actually‚ calls A(ENTER-HEUR‚ x‚îy‚ TYPE).‚î TYPE"S‚ value‚îis‚ either‚îATOM‚ or‚îFUNCTION.‚ In‚îgeneral‚ HEUR-TUPLE‚îdecides‚ if Athe EXPRESSION is an atom or function but it can be wrong. A There‚ is‚ an‚ elaborate‚ default‚ system‚ used‚ here.‚ If‚ an‚ atom‚ has‚ no‚ imperative,‚ the‚ ATOMDEFAULT Ais‚ used.‚ If‚ there‚ is‚ no‚ imperative‚ for‚ a‚ particular‚ FORM‚ although‚ there‚ are‚ other‚ FORMS‚ of‚ this‚ operator Athat‚ have‚îimperatives‚ then‚ the‚îFORMDEFAULT‚ will‚ be‚îtried.‚ Though‚ if‚îFORMDEFAULT‚ is‚ NIL,‚îthen‚ the AFUNCTIONDEFAULT is tried. If a function has no imperative the FUNCTIONDEFAULT is used. A The‚above‚default‚mechanism‚currently‚controls‚the‚way‚atom‚values‚are‚displayed‚and‚macro Aforms are processed. A An‚"ACTIVE‚DAEMON"‚can‚return‚a‚value‚and‚inhibit‚the‚further‚evaluation‚of‚the‚expression. AThe‚value‚is‚set‚by‚setq'ing‚the‚atom‚"STEP-VALUE".‚ The‚DAEMON‚should‚then‚returns‚the‚special ACOMMAND "EVALED". A There‚are‚a‚number‚of‚predefined‚IMPERATIVES‚that‚are‚equivalent‚to‚the‚following‚"ACTIVE ADAEMONS" ANAME !DAEMON aMEANING APROG !(STEP-PROG) ainternal default for PROG ALAMBDA !(STEP-LAMBDA) ainternal default for LAMBDA AFUN !(STEP-AUTOMATIC) adisplay the function name and return the COMMAND Y AATOM !(STEP-ATOMVALUE) adisplay the atom name and value AMACRO !(STEP-MACROFORM) adisplay the macro name and evaluate it once AARG !(STEP-FIRSTARG) adisplay the function name and first argument and A ! areturn the COMMAND Y A  Functions‚called‚at‚the‚READ-EVAL-PRINT‚loop‚are‚just‚expected‚to‚return‚a‚value‚to‚be Adisplayed.‚ "LEASHED‚ DAEMON"s‚ must‚ to‚ do‚ this‚ as‚ well.‚ The‚ function‚ "FORCE-COMMAND"‚ is‚ available‚ for Athe‚"LEASHED‚DAEMON"‚to‚return‚any‚COMMAND‚desired.‚ It‚forces‚a‚premature‚exit‚form‚the‚READ- AEVAL-PRINT‚loop.‚î Thus‚the‚îDAEMON‚can‚îreturn‚a‚îsimple‚COMMAND‚îas‚"Y"‚îor‚"B".‚î It‚can‚equally‚îwell Areturn‚ the‚ "EVALED"‚ COMMAND.‚ The‚ "LEASHED‚ DAEMON"‚ may‚ have‚ side‚ effects‚ and‚ want‚ the‚ imperative Alookup cycle tried again. It can do this by returning the special COMMAND "AGAIN". A N.B. (STEP-SILENT) is a "LEASHED DAEMON". A10 ADraft ^Stepper Documentation A   SWITCHES  A There‚ are‚ a‚ small‚ infinity‚ of‚ switches‚ to‚ control‚ the‚ STEPPER.‚ Hopefully‚ each‚ is‚ set‚ to‚ a‚ reasonable Adefault.‚ Switches‚ can‚ be‚ reset‚ at‚ toplevel‚ lisp‚ or‚ in‚ the‚ STEPPER.‚ Those‚ switches‚ (marked‚ by‚ *)‚ may‚ be Areset while in the STEPPER, but will revert to their toplevel value when toplevel is again attained. ASPRINTER Aif LH, use Lowel Hawkinson's PRETTY PRINTER, A Aif T, use SPRINTER, A Aelse use PRINT ASTEPHOLD * Alast COMMAND FORM to STEP. ASTEPLIMIT Acurrent limit used to stop printout (if A ASTEPDEPTH > STEPLIMIT ASTEPMAX A Qarbitrary depth nesting limit (140 levels) ASTEP-FORM Acurrent FORM ASTEP-VALUE Acurrent FORM's value ASTEPDEPTH Acurrent depth ASTEPATOMDEFAULT * Aactual atom default ASTEPMACRODEFAULT * Aactual macro default ASTEPFUNCTIONDEFAULT * Aactual function default ASTEPFORMDEFAULT * Aactual form default AATOMPREDS Alist of predicates tested before evaling atoms AFORMPREDS Alist of predicates tested before evaling FORMS ASTEPMARKEDFUNCTIONS Afunctions and atoms having heuristics ASTEPMARKEDFORMS A QFORMS having heuristics AOLDSTEP-FORM Aprevious FORM AOLDSTEP-VALUE Aprevious FORM's value AOLDSTEPDEPTH Aprevious FORM's depth ASTEPOK-COUNT Arepetition count for reusing user typein ASTEPOK-ANS Auser typein A ===== super internal variables ===== ASTEPSILENCE * ASTEPCHECK-ENABLE * ASILENTSTEPATOMDEFAULT ASILENTSTEPFUNCTIONDEFAULT AStepper Documentation ADraft a11 A EVAL TYPE COMMAND AN !use LISP EVAL AV !N and show value AB !V and break, the atom STEP-VALUE contains the answer A STEP TYPE COMMAND (roughly equivalent to (SEVAL STEP-FORM)) AY !recursive call on STEPPER, analog of B AR !recursive call on STEPPER, analog of N AD !recursive call on STEPPER, analog of V AC !recursive call on STEPPER, analog of B A EXTRA COMMANDS AI !ignore STEP-FORM and let the user supply one instead AM !consider‚STEP-FORM‚to‚be‚a‚macro‚and‚evaluate‚it‚once‚and‚let‚the‚result‚become A STEP-FORM. AA !break before the function is applied to its arguments then procede like Y. A SPECIAL COMMANDS for heuristic functions (DAEMONS) only: Aevaled !tells‚ the‚ STEPPER‚ that‚ the‚ STEP-FORM‚ has‚ been‚ already‚ evaluated‚ and‚ STEP-VALUE‚ has A been setq'ed to the answer. Aagain !causes the STEP-FORM to be "seen again for the first time". Aask !causes the user to be asked for a COMMAND A MISCELLANEOUS COMMANDS (that function only in the READ-EVAL-PRINT loop) A !return to "number" depth quietly. AnX !where‚ n‚ is‚ an‚ integer‚ 1‚ through‚ 9‚ and‚ X‚ is‚ one‚ of‚ the‚ above‚ COMMANDS‚ means‚ return A the answer X a total of n times. A!X !equivalent to (HEUR[-TUPLE] (car STEP-FORM) X) A#X !equivalent to (HEUR[-TUPLE] STEP-FORM X) A:ATOM !If the ATOM prefixed by a colon the atom will be evaluated. AATOM !The‚ ATOM‚ will‚ be‚ evaluated‚ unless‚ it‚ can‚ be‚ confused‚ with‚ a‚ COMMAND‚ in‚ which‚ case‚ it A will be considered an COMMAND A(LEASHED DAEMON) AThe‚form‚will‚be‚evaluated‚and‚its‚value‚displayed.‚ Further‚if‚the‚form‚executes A "(FORCE-COMMAND‚ )",‚ the‚ ‚ will‚ be‚ seen‚ and‚ the‚ READ-EVAL-PRINT A loop exitted. A(form) !Any typed form will be evaluated and its value displayed A (HEUR EXPRESSION1 IMPERATIVE1 ... EXPRESSIONn IMPERATIVEn) AEXPRESSION !a function, form, or a depth number representing the form at that depth. AIMPERATIVE !‚îmay‚be‚îa‚îCOMMAND‚or‚îa‚îlist‚whose‚îcar‚îis‚an‚îexpr‚îof‚two‚îarguments‚îthat‚returns‚îa A COMMAND.‚ The‚STEPPER‚behaves‚as‚though‚the‚IMPERATIVE‚had‚been‚typed‚when A "EXPRESSION" appears as the STEP-FORM. A SPECIAL IMPERATIVE ABBREVIATIONS Aatom !atom default Amacro !macro default Afun !print function name and then do Y Aarg !print function name, first arg, and then do Y Aprog !default for prog handling Alambda !default for lambda handling A PSEUDO IMPERATIVES Aoff !causes the imperative to be turned off for expression Adefault !causes the imperative to be printed out for the expression A12 ADraft ^Stepper Documentation A DEFAULTS AATOMDEFAULT !(normally‚ '(STEP-ATOMVALUE))‚ is‚ the‚ heuristic‚ used‚ when‚ an‚ atom‚ that‚ does‚ not‚ have‚ a A heuristic is encountered. AMACRODEFAULT !(normally‚ '(STEP-MACROFORM))‚ is‚ the‚ heuristic‚ used‚ when‚ an‚ macro‚ that‚ does‚ not‚ have A a heuristic is encountered. ASTEP-PREDS !see page 4 ASTEP-SILENT !see page 4