Redefinable Predicates

Redefinable predicates exist to enable you to embed Prolog code within a program in another language. They have default definitions that are fairly complex. Source is provided for them. They are all in modules beginning with QU. Sophisticated users may wish to provide alternative definitions of these modules. You can redefine embeddable predicates at run-time too, by simply compiling new versions of the QU_ module-file (see fli-emb).

The key distinction is that it only makes sense to redefine embeddable predicates totally and globally. Hook predicates, on the other hand, can be extended piecemeal, and need not have any definition at all.