This library provides syntactic forms that are needed to perform multi-file analysis with MrSpidey, DrScheme's static debugger.
Like begin-elaboration-time, this macro expands to the result of evaluating expr. This form is treated specially by compile-file (see section 15.2.5).
Loads filename with load/use-compiled. The difference between reference-file and load/use-compiled is that reference-file is a syntactic form where filename must be a syntactic string constant. Also, when reference-file is used in a program analyzed by MrSpidey, the referenced file is syntactically included for analysis purposes.
Like require-unit, but require-library/proc is used instead of load/use-compiled. This form is not useful in MzLib since all MzLib libraries use signed units.
Like require-unit/sig, but require-library/proc is used instead of load/use-compiled.
Like require-unit, but require-relative-library/proc is used instead of load/use-compiled.
Like require-unit/sig, but require-relative-library/proc is used instead of load/use-compiled.
Loads filename with load/use-compiled and checks that the result is a unit value; otherwise, the exn:unit exception is raised. The result of loading the file is the result of the require-unit expression. The filename must be a syntactic string constant.
MrSpidey expects filename to contain a single expression. MrSpidey will only accept the program if the the expression in filename is closed except for MzScheme built-in names. MrSpidey must also be able to deduce that the value of the expression is a unit.
Like require-unit, except that the value returned by load/use-compiled must be a sighed unit; otherwise, the exn:unit exception is raised.
MrSpidey will accept this form only when it is able to deduce that the value of the expression in filename is a signed unit.