QOF Loading and Saving

Since Release 2.5, the Runtime Generator compiler qpc has been made available as part of the Development System. qpc compiles Prolog files into QOF (Quintus Object Format) files. QOF files can be linked together to make an executable file, which is an extended version of the development system. If you have a Runtime Generator license, you have the alternative of linking your QOF files into a runtime system, which omits development features (the compiler and debugger) and which can be conveniently deployed to different machines since it requires no authorization code in order to be run.

Release 3 introduces the ability to load QOF files directly into a running Prolog system. Loading a QOF file is up to 100 times faster than compiling it from source. File loading has been adapted to take advantage fo this new functionality. For instance, the form

     | ?- [file].

now loads file.qof if it exists and is more recent than file.pl; otherwise it compiles file.pl.

The saved-state produced by save_program/1 is now a QOF file. This means that it is now portable between different hardware and operating systems as well as between all releases of Quintus Prolog. It can still be executed as if it were an executable file, or it can be loaded into a running Prolog system. Another alternative is to call the QOF-linker qld on it to convert it to an executable file. It is also possible to save individual predicates or modules into a QOF file. ref-lod and ref-sls describe QOF loading and QOF saving respectively. See sap-srs-bas-cld for how to link QOF files to make an executable file.