1/*
    2%  NomicMUD: A MUD server written in Prolog
    3%  Maintainer: Douglas Miles
    4%  Dec 13, 2035
    5%
    6%  Bits and pieces:
    7%
    8%    LogicMOO, Inform7, FROLOG, Guncho, PrologMUD and Marty's Prolog Adventure Prototype
    9% 
   10%  Copyright (C) 2004 Marty White under the GNU GPL 
   11%  Sept 20,1999 - Douglas Miles
   12%  July 10,1996 - John Eikenberry 
   13%
   14%  Logicmoo Project changes:
   15%
   16% Main file.
   17%
   18*/
   19
   20:- user:ensure_loaded(library(poor_bugger)).   21
   22% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   23%  CODE FILE SECTION
   24:- nop(ensure_loaded('adv_debug')).   25% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   26
   27% '$hide'(Pred) :- '$set_predicate_attribute'(Pred, trace, false).
   28never_trace(Spec):- '$hide'(Spec),'$iso'(Spec),trace(Spec, -all).
   29:- never_trace(list_to_set/2).   30:- use_module(library(lists)).   31%:- never_trace(lists:append(_,_,_)).
   32:- never_trace(lists:member_(_,_,_)).   33:- never_trace(prolog_debug:assertion(_)).   34
   35%:- never_trace(lists:member(_,_)).
   36%:- never_trace(lists:append(_,_,_)).
   37dshow_call(G):- simplify_dbug(G,GG), (call(G)*-> dbug(success_dshow_call(GG)) ; (dbug(failed_dshow_call(GG)),!,fail)).
   38found_bug(S0,duplicated_object(X,R,L)) :-
   39  append(Left,[prop(X,R)|_],S0),
   40  member(prop(X,L),Left).
   41
   42
   43check4bugs(S0) :- found_bug(S0,Bug),throw(check4bugs_failed(Bug)).
   44check4bugs(_S0) :-
   45  !, true.
   46check4bugs(S0) :-
   47  % TODO: emergency save of S0, either here or better yet, in a catch().
   48  throw(check4bugs_failed(S0)).
   49
   50      
   51:- multifile(user:portray/1).   52:- dynamic(user:portray/1).   53:- discontiguous(user:portray/1).   54% user:portray