From p.singleton@keele.ac.uk  Tue Jan 18 21:22:20 2000
Received: from cmailg5.svr.pol.co.uk (cmailg5.svr.pol.co.uk [195.92.195.175])
	by swi.psy.uva.nl (8.9.3/8.9.3) with ESMTP id VAA19423
	for <prolog@swi.psy.uva.nl>; Tue, 18 Jan 2000 21:22:20 +0100 (MET)
Received: from modem4294967290.crime.dialup.pol.co.uk ([195.92.0.134] helo=keele.ac.uk)
	by cmailg5.svr.pol.co.uk with esmtp (Exim 3.13 #0)
	id 12Af8C-0007gz-00
	for prolog@swi.psy.uva.nl; Tue, 18 Jan 2000 20:21:37 +0000
Message-ID: <3884CB89.A930796C@keele.ac.uk>
Date: Tue, 18 Jan 2000 20:22:33 +0000
From: Paul Singleton <p.singleton@keele.ac.uk>
Organization: SmartArts Computing Consultancy
X-Mailer: Mozilla 4.7 [en] (WinNT; I)
X-Accept-Language: en
MIME-Version: 1.0
To: SWI Prolog <prolog@swi.psy.uva.nl>
Subject: [Fwd: abolish/1 in 3.3.0]
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

Paulo Moura wrote:

> Paul Singleton wrote:

> > I'm puzzled by the following, which didn't happen in 3.2.8:
> >
> >   ?- abolish( qp_vno_to_builtins_lib/2).
> >   ERROR: No permission to modify static_procedure
> > `qp_vno_to_builtins_lib/2'
> >
> >   ?- listing(qp_vno_to_builtins_lib).
> >   ERROR: No permission to access private_procedure
> > `qp_vno_to_builtins_lib/2'
> >
> >   ?- predicate_property( qp_vno_to_builtins_lib(_,_), P).
> >   P = interpreted ;
> >   P = indexed(qp_vno_to_builtins_lib(1, 0)) ;
> >   P = file('d:/pcm/bin/pcm_2000/54.pl') ;
> >   P = line_count(22394) ;
> >   P = hashed(4) ;
> >   P = number_of_clauses(7) ;
> >   No
> >   ?-
> >
> > I don't need to do 'listing' but I really need to be able to
> > abolish interpreted procedures.  Can anyone shed any light on
> > this?

> Including the following directive in your source file will solve the problem:
> 
>         :- dynamic(qp_vno_to_builtins_lib/2).

Yes, but this is not a dynamic procedure, it's just a regular
consulted procedure, and I want to abolish it!

Paul Singleton

