Re: Contexts and firstname.lastname@example.org (John F. Sowa)
Date: Thu, 1 Jun 1995 14:15:24 +0500
From: email@example.com (John F. Sowa)
To: firstname.lastname@example.org, email@example.com, firstname.lastname@example.org, email@example.com
Subject: Re: Contexts and views
Cc: firstname.lastname@example.org, email@example.com, firstname.lastname@example.org
I'm sorry about my last message, which was truncated. I was having
trouble with the Unix system, which seems to think that I am running
out of disk space. The result is that strange things tend to happen.
It is another manifestation of the proverb, "Unix is the second best
operating system in the world. First is anything else."
I was making some comments about Bob MacGregor's comments about my
recent note about contexts and views. Following is a brief summary:
1. I think that there is a great deal of similarity between what I was
suggesting and what Bob has been implementing.
2. I have no strong objections to allowing a general partial ordering
of contexts, but it might make formal definitions more complicated
than an Algol-like nesting. I also suggested Ada packages and
Modula modules as another source of ideas.
3. I agree that we need lifting rules for exporting definitions and
facts out of a context and into some higher context.
4. I also wanted to mention another language that has some very good
ideas that we should consider: the Goedel language, which was
developed in the UK as a cleaned up, better structured version of
Prolog. The designers have given very careful attention to the
issues of modularity (with export and import rules) and to the
issues of metalanguage (with especially careful attention to
keeping track of the object variables and metavariables). I
recommend the following book:
_The Goedel Programming Language_ by Patricia Hill and John Lloyd,
MIT Press, Cambridge, MA, 1994.
The book is a well written tutorial about the language with good
discussion of the design decisions and the Prolog problems they
were intended to solve. There is also an implementation available