bsphackfloatpenalty -Mii floatpenalty-Miii parmoderrfloatpenalty@ nextcurrboxfreelist currbox-2floatpenalty@ fltovf currboxtempboxa tempboxa @floatesphackbsphackfloatpenalty -Mii floatpenalty-Miii parmoderrfloatpenalty@ nextcurrboxfreelist currbox-3floatpenalty@ fltovf currboxtempboxa tempboxa @floatesphack
A CLP( ) source program can be loaded using the consult/1 predicate or the more convenient notation[;SPMlt;list of filenames;SPMgt;], e.g. [myprog, mytest] at the top level prompt loads those two files. Loading a program compiles all the rules in that file, makes the new predicates in it available for use and also executes any embedded goals. Unlike some PROLOG systems where consulted files are interpreted and compilation is done using a different method, all consulted predicates in CLP( ) are compiled (usually fairly quickly). Note that filenames may have an implicit suffix added as in Section 4.2. Filenames which are specified directly should consist entirely of lowercase characters and any other kind of filename, eg. a pathname, should be surrounded by single quotes.
Reconsulting a file with reconsult/1 or the notation [`;SPMlt;list of filenames;SPMgt;] will if it encounters previous definitions, erase them and replace them by the new definitions. By default, a predicate which is redefined will generate a warning. This may be turned off by executing the system predicate warning(redefine_off). Some PROLOG systems use an alternative notation [-filename] but in CLP( ) this conflicts with unary minus. Also in some systems, consulting and reconsulting are combined together. In CLP( ) consulting a previously consulted file with active definitions will result in warning messages and redefinitions will be ignored.
The special filename user denotes that the file to be consulted or reconsulted is read from standard input. This allows direct entry of rules which is handy for quick modifications from the top query level. More on the organization of consulted files is contained in Section 4.7. bsphackfloatpenalty -Mii floatpenalty-Miii parmoderrfloatpenalty@ nextcurrboxfreelist currbox-4floatpenalty@ fltovf currboxtempboxa tempboxa @floatesphack