Subject: Re: [SWIPL] A help with the use of the module predicate.

From: Tom Breton <[email-masked]>
Date: 22 May 2001 13:21:21 -0400

Jan Wielemaker <[email-masked]> writes:

> > "Sergio R. P. da Silva" <[email-masked]> writes:
> > You're in luck.  I got that working some time ago.  I had to make 3
> > changes, but IIRC that wasn't one of them.
> > 
> > You need to define a rule Quintus has that SWI doesn't:
> > 
> >         simple(X) :- (atom(X) | number(X) | var(X) ), !.
> 
> Thanks.  I added simple to library(quintus) as:
> 
> simple(X) :-
> 	(   atomic(X)
> 	->  true
> 	;   var(X)
> 	).

Yeah, that's better.  I had barely started Prolog when I wrote that.
I actually first got SWI for that purpose.

> > For some reason EnglishLexicon needed to be a module, so I added:
> 
> Anything more specific on `some reason'?

It's been a while, so I forget exactly why it was neccessary.  Sorry.
I thaut I wrote it down, but I can't seem to find it.  

ISTR it had something to do with being included in other modules.
Like, it was included in more than 1 module, which each made it part
of themselves, and so it appeared to be 2 different predicates and
caused some sort of clash?  My memory of why is quite hazy.

-- 
Tom Breton, http://world.std.com/~tob