/*  -*- Prolog -*-

    Part of SWI-Prolog

    Author:  Jan Wielemaker
    E-mail:  J.Wielemaker@vu.nl
    WWW:     http://www.swi-prolog.org/projects/xpce/
    Copying: This file is in the public domain.
*/

/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Loaded  from  .swiplrc  (swipl.ini   on    MS-Windows)   for  additional
initialisation   on   XPCE.   It   should     be   installed   next   to
.swiplrc/swipl.ini

	Unix:			~/.xpcerc
	Windows-NT/2000:	%USERPROFILE%/xpce.ini
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

%	Make PceEmacs your default editor.  Can also be done from the
%	Prolog initialisation

%pce_ifhostproperty(prolog(swi),
%		   (:- ensure_loaded(library('emacs/swi_prolog')))).

%	Print object-references as @reference/class, making debugging
%	a bit easier.

:- multifile
	portray/1.

portray(Obj) :-
	object(Obj),
	Obj = @Ref, !,
	(   send(Obj, '_instance_of', var)
	->  get(Obj, '_value', Value),
	    format('@~w(= ~p)', [Ref, Value])
	;   get(Obj, '_class_name', CN),
	    format('@~w/~w', [Ref, CN])
	).

%	Allow for ?- manpce(device<-graphicals).

:- initialization op(100, xfx, <-).

%	Handle unbound recursion gracefully.

:- send(@pce, max_goal_depth, 1000).

%	Start the manual toplevel as you start the system

% :- manpce.
