Navigation  without Java Scripts

Segmentation Fault under Linux, while using the retract predicate

R990609.01

The following code demonstrates the problem:

domains
  stringdata=string
database - internal
  stringdb(stringdata)
 
predicates
  go
 
clauses
 go:-
   %% assert first
   assertz(stringdb("alpha")),
   assertz(stringdb("beta")),
   assertz(stringdb("charlie")),
   assertz(stringdb("delta")),
   assertz(stringdb("1")),
   assertz(stringdb("1.1")),
% The following code will cause trouble,
%   when we retract(stringdb(_))
   assertz(stringdb("1,2")), 
   assertz(stringdb("end")),
   %% then retract and print
   retract(stringdb(P1)),
   write(P1),nl,
   retract(stringdb(P2)),
   write(P2),nl,
   retract(stringdb(P3)),
   write(P3),nl,
   retract(stringdb(P4)),
   write(P4),nl,
   retract(stringdb(P5)),
   write(P5),nl,
   retract(stringdb(P6)),
   write(P6),nl,
%% The following code
%  will cause core dump!
   retract(stringdb(_)), 
%% The following code WILL work instead!
   %retract(stringdb(P7)), 
   %write(P7),nl,
   retract(stringdb(P8)),
   write(P8),nl,
   !.