next up previous contents index
Next: 3.6 The Dynamic Loader Up: 3. System Description Previous: Usage inference and the   Contents   Index


3.5 Standard Predicates in XSB

Whenever XSB is invoked, a large set of standard predicates are defined and can be called from the interpreter or other interface 3.6. These predicates include the various ISO predicates , along with predicates for tabling, I/O and for interaction with the operating system, for HiLog, and for other functionality. Standard predicates are declared in the file $XSB_DIR/syslib/std_xsb.P and are covered in Chapter 6 of this manual. If a user wishes to redefine a standard predicate, she has several choices. First, the appropriate fact in $XSB_DIR/syslib/std_xsb.P should be commented out. Once this is done, a user may define the predicate as any other user predicate. Alternately, the compiler option allow_redefinition can be used to allow the compiler to redefine a standard predicate (Section 3.10.2). If a user wants to make a new definition or new predicate standard, the safest course is to put the predicate into a module in the lib directory, and add or modify an associated fact in $XSB_DIR/syslib/std_xsb.P.


next up previous contents index
Next: 3.6 The Dynamic Loader Up: 3. System Description Previous: Usage inference and the   Contents   Index
Terrance Swift 2007-10-05