Path: utzoo!attcan!uunet!munnari.oz.au!lee From: lee@munnari.oz.au (Lee Naish) Newsgroups: comp.lang.prolog Subject: Re: making a "call" to a text file Message-ID: <4888@munnari.oz.au> Date: 23 Jul 90 00:40:41 GMT References: Sender: news@cs.mu.oz.au Reply-To: lee@munmurra.UUCP (Lee Naish) Distribution: comp Organization: Comp Sci, University of Melbourne Lines: 26 In article eiverson@nmsu.edu (Eric Iverson) writes: > >I am working with a very large text file of dictionary definitions in >prolog format. What I would like to do is write a routine that does a >virtual call without actually consulting the file. > >Below is a sample of what I am trying to call: > >int(play(v,12), > [[genera, > [[ancestor, [perform(v,1)]]]], .... Some Prolog systems (eg, NU-Prolog) allow you to store Prolog facts in external databases, where they can be accessed reasonably efficiently (by just calling the predicate). The advantages, compared with the scheme outlined by Richard, are less main memory is needed for large databases, the indexing is more flexible, updates are supported, its more transparent, joins of database relations might be much faster, .... Disadvantages are its less portable, it requires more disk space, it may be slower (depending on overheads, indexing schemes and cache strategies used), it uses more main memory for small databases, .... lee