🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.lang.prolog
Article #3365

Re: modules

#3365
From: Jeff Dalton
Date: Fri, 13 May 1988 16:47
38 lines
2390 bytes
In article <2747@mulga.oz> lee@mulga.UUCP (Lee Naish) writes:
>The main uses of a module system are
>	1) avoiding accidental name clashes, and
>	2) protecting procedures from being called by anyone.

I am pleased to see such a small list and am even willing to take out
the second item, requiring instead only that such calls cannot too
easily be made by accident.  Of course, it would be nice if module
systems had other desirable properties as well.

>Prolog module systems have to handle a bit more than module systems of
>conventional languages because of the ways in which data/code can be
>converted into other representations and converted back:

One of the disappointing aspects of the BSI work on modules was that
many of the arguments presented against atom-based schemes seemed based
almost entirely on misunderstanding, a tendency to think of modules in
terms derived from languages like Fortran and Ada, and prejudice against
Lisp, which had somehow been associated with the atom-based suggestions.
The idea seemed to be that anyone whose thinking had not been influenced
[I've tried to find a reasonably neutral word] by Lisp would immediately
see that only predicate-based schemes made sense.  It was sometimes
difficult to get them to acknowledge that Prolog might have reasons of
it's own, namely the presence of things like =..  and call/1, and
difficult to obtain a clear explanation of how their proposals would
solve such problems.

Please do not read the last paragraph as an attack on the points
made by Richard O'Keefe: it isn't.  I am thinking instead of things
presented during BSI module meetings.  Indeed, one of the things I was
hoping Richard might do is to provide a clear explanation of the sort I
have been missing.

-- Jeff

Jeff Dalton,                      JANET: J.Dalton@uk.ac.ed             
AI Applications Institute,        ARPA:  J.Dalton%uk.ac.ed@nss.cs.ucl.ac.uk
Edinburgh University.             UUCP:  ...!ukc!ed.ac.uk!J.Dalton
Technical Details
Message-ID: <437@aiva.ed.ac.uk>
Path: arc1-ca.pugleaf.net!utzoo!attcan!uunet!mcvax!ukc!its63b!aiva!jeff
References: <2747@mulga.oz>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!attcan!uunet!mcvax!ukc!its63b!aiva!jeff
From: jeff@aiva.ed.ac.uk (Jeff Dalton)
Newsgroups: comp.lang.prolog
Subject: Re: modules
Keywords: another module scheme
Message-ID: <437@aiva.ed.ac.uk>
Date: 13 May 88 16:47:45 GMT
References: <2747@mulga.oz>
Reply-To: jeff@uk.ac.ed.aiva (Jeff Dalton)
Organization: Dept. of AI, Univ. of Edinburgh, UK
Lines: 38