Next: References
Up: PLT MrSpidey: Static Debugger
Previous: Customization
The following DrScheme facilities are not handled.
-
Primitives for dynamic loading and evaluation: load,
load/cd, load-relative, load/use-compiled,
current-load, require-library-use-compiled, compile,
eval, current-eval, expand-defmacro and
expand-defmacro-once.
-
Primitives that dynamically manipulate the top-level environment:
global-defined-value, undefine, invoke-open-unit and
invoke-open-unit/sig.
-
MzSchemes interfaces, exception system and exception hierarchy.
-
Primitives that access structures without the appropriate selectors:
struct-ref and struct->vector.
-
MrSpidey doesn't know about DrScheme language levels.
-
Primitive names should not be assigned or defined.
Certain potential errors are not detected:
-
Returning an inappropriate number of multiple values to a single value
context.
-
Index out of bounds on vector, string and list operations.
-
Reference to unbound variables.
-
compound-unit errors.
-
The arguments to primitive-name and primitive-result-arity
are only checked to be procedures, not primitive procedures.
-
Errors in read due to ill-formed s-expression on the input port.
The analysis of certain kinds of code is not completely sound:
-
Values passed to exception handlers.
-
Tracking of values through parameters.
-
Tracking of values through will executors.
-
MrSpidey doesn't implement unit/sig in terms of unit, as
MzScheme does.
PLT