User Tools

A PCRE internal error occured. This might be caused by a faulty plugin

====== Macro STEP ====== ====Syntax==== * **step** //form// → //result''*''// ====Arguments and Values==== * //form// - a //[[CL:Glossary:form]]//; evaluated as described below. * //results// - the //[[CL:Glossary:value|values]]// returned by the //form//. ====Description==== **step** implements a debugging paradigm wherein the programmer is allowed to //[[CL:Glossary:step]]// through the //[[CL:Glossary:evaluation]]// of a //[[CL:Glossary:form]]//. The specific nature of the interaction, including which I/O streams are used and whether the stepping has lexical or dynamic scope, is //[[CL:Glossary:implementation-defined]]//. **step** evaluates //form// in the current //[[CL:Glossary:environment]]//. A call to **step** can be compiled, but it is acceptable for an implementation to interactively step through only those parts of the computation that are interpreted. It is technically permissible for a //[[CL:Glossary:conforming implementation]]// to take no action at all other than normal //[[CL:Glossary:execution]]// of the //form//. In such a situation, ''(step //form//)'' is equivalent to, for example, ''(let () //form//)''. In implementations where this is the case, the associated documentation should mention that fact. ====Examples==== None. ====Affected By==== None. ====Exceptional Situations==== None. ====See Also==== **[[CL:Macros:trace|Macro TRACE]]** ====Notes==== //[[CL:Glossary:implementation|Implementations]]// are encouraged to respond to the typing of ''?'' or the pressing of a "help key" by providing help including a list of commands. \issue{EVALHOOK-STEP-CONFUSION:X3J13-NOV-89} \issue{EVALHOOK-STEP-CONFUSION:X3J13-NOV-89} \issue{STEP-ENVIRONMENT:CURRENT} \issue{STEP-MINIMAL:PERMIT-PROGN} \issue{EVALHOOK-STEP-CONFUSION:X3J13-NOV-89}