PLOGHELP COMPATIBILITY Jonathan Laventhol, Thursday 22nd March 1984 Revised by Kathryn Seifert October 1986 This file describes DEC10 predicates which are not implemented in POPLOG Prolog, with suggestions on how to get around their absence. See also the file PLOGHELP * POPLOG which describes other differences. -- MISSING BUILT IN PREDICATES ---------------------------------------- 'C'(A,B,C) This is not implemented. As the DEC10 manual says, it isn't that useful. If you need it, it's this: 'C'([X|Y], X, Y). 'LC' 'NOLC' This is defined as being system dependant. POPLOG Prolog uses the LC convention. erase(A) instance(A,B) recorda(A,B,C) recorded(A,B,C) recordz(A,B) These facilities are provided in a library file. See PLOGHELP * RECORD unknown(A,B) These facilities are provided in a library file. See PLOGHELP * UNKNOWN ancestors(X) subgoal_of(A) depth(A) maxdepth(A) Our system is a compiler, and these are not usually implemented in compiled Prolog systems. It is possible to get the effect of maxdepth because a mishap occurs when the recursion stack overflows: see PLOGHELP * SYSTEM for more information about setting memory limits. Our intention is to provide ancestors/1 (and hence subgoal_of) eventually. assert(C,R) asserta(C,R) assertz(C,R) clause(H,T,R) Use normal assert/1, asserta/1, assertz/1, retract/1, or use library(record). compactcode fastcode There are no flags to control the time/space tradeoff of the compiled code. For information, unification of heads of clauses is done by inline code where the structures no more complex than one level deep. Other unification is done by out-of-line code. For optimisation information, see PLOGHELP * EFFICIENCY fileerrors nofileerrors It is possible to redefine the actions for any given error. See PLOGHELP * ERROR gc nogc gcguide(A,B,C) Garbage collection is always enabled in POPLOG Prolog. It is possible to tune the collections by use of predicates prolog_gcratio/1, prolog_memlim/1 and prolog_area_lim/1. See PLOGHELP * SYSTEM log nolog These facilities are defined in a library file. See PLOGHELP * LOG mode X Mode declarations are not yet supported by this Prolog. Use var/1 and nonvar/1. public X revive(Name, Arity) These are not meaningful in a system with only a compiler. leash(X) trace debug These debugging facilities are not yet available. plsys(Term) Interaction with the operating system should rarely be needed. If it is, you should use POP11 facilities. See HELP * SYSOBEY. -- RELATED DOCUMENTATION ---------------------------------------------- PLOGHELP * SYSTEM Predicates which affect the way the Prolog system operates PLOGHELP * POPLOG Features of POPLOG Prolog PLOGHELP * DEC1O Library file to change operator precedences to those of DEC10 Prolog PLOGHELP * EFFICIENCY Hints about how to make Prolog programs more efficient --- C.all/plog/help/compatibility -------------------------------------- --- Copyright University of Sussex 1988. All rights reserved. ----------