[comp.lang.prolog] My views on developing a PROLOG standard

lagache@violet.berkeley.edu (Edouard Lagache) (03/21/88)

          To help get the creative juices flowing on those position papers,
     I thought I would throw in my two cents worth on this proposed
     standard.

          While I am not really qualified to make much commentary on the
     subject (So what? that has never stopped me before!), there are a
     number of peripheral matters that I would like to see addressed.

          The matter of greatest concern for me is the question of whose
     standard will be the standard?  The BSI group is a British standard;
     Now I hear that the French are working on their own standard (the AFNOR
     group).  All this is fine and good except that in all likelihood the
     resulting standards will have about as much similarity with each other
     as the French and English (natural) languages do (never mind the fact
     that neither standard will have have much to do with existing practice)
     - This is progress!?!

           Perhaps this is a wild fantasy on my part, but I would really
     like to see ONE (1) standard.  That standard should be agreed upon not
     just by the British and the French, but by ALL the major users of
     PROLOG which includes (at the very least) most of Europe, Japan, and
     the U.S.  It seems to me that someone should bug the ANSI standard
     committee, NOT to come up with their own standard (Lord have mercy on
     all those "C" and FORTRAN users once the new standards are in place),
     but to take part in an international effort to come up with the before
     mentioned 1 PROLOG standard.

          Fantasies aside, I do have a few comments on the BSI standard.  On
     the specifics of the "grimoire", I can only steal a quote from the
     venerable Michael Clancy: "Do the right thing".  In this case, "Do the
     right thing" means try to capture existing practice as much as possible
     (see "lots of smoke" on exactly what existing practice means on the
     FORTRAN SIG).  I do believe that asking the question of how existing
     code would run under the new standard is a valuable measure of the
     success at capturing existing practice.  Unless there is a *strong*
     reason to change syntax, the new standard shouldn't depart from
     existing practice.  Thus, I have read Richard O'Keefe's comments on his
     perceptions of the standard syntax with real concern.  Until I see a
     "reasonable" reply from the standards committee, I am inclined support
     Richard O'Keefe's position on this matter.

          At the end of last week there was some discussion of the standard
     library.  Here I have one suggestion, make the library big enough so
     that people don't have to reinvent the wheel all the time.  I took a
     lot of heat for my imfamous PROLOG libraries, while the code quality
     was perhaps inadequate, I believe that the concept was valuable.  Even
     in as rich a language as Franz LISP, I still found the need for 1600
     lines of additional general purpose functions.  So there is a lot of
     room expansion in PROLOG.

          I would like to suggest defining a separate set PROLOG libraries,
     much in the same way the UNIX "C" library is (was?) defined
     independantly of the language.  In this area, I would strongly suggest
     various levels of libraries.  There should be some core set that would
     be required for the standard language, then additional standards would
     be defined for supplemental libraries.  <*Fantasy mode on*>  Ideally
     the standards committee should provide source code for those
     supplemental libraries in the core standard language (when possible),
     so that anyone using any standard PROLOG implementation could use the
     full set of libraries (if more slowly than if all the predicates were
     builtin). <*Fantasy mode off*>  In any case, Everybody knows that the
     first thing PROLOG system implementors do is to embellish on the
     standard core library, so wouldn't it be nice if the standard included
     a few hundred predicates to keep those implementors busy upgrading
     their product in a standard way (maybe I should have kept Fantasy mode
     on?)

          The last thing I would really like to see is some vast
     improvement in the standard user interface tools.  Even if not all
     hardware can support it, I would like to see some standard way to
     access windows, i/o devices (i.e. mice), and or forth.  If one could
     write complete applications in PROLOG that had portable "bells and
     whistles", that would make PROLOG much more attractive for those trying
     to make polished products for end users, since that would greatly reduce
     porting problems (I know, Fantasy mode is still on!)

     Still dreaming in California,

                                        Edouard Lagache
                                        lagache@violet.berkeley.edu

ok@quintus.UUCP (Richard A. O'Keefe) (03/23/88)

In article <7847@agate.BERKELEY.EDU>, lagache@violet.berkeley.edu (Edouard Lagache) writes:
>           The matter of greatest concern for me is the question of whose
>      standard will be the standard?  The BSI group is a British standard;
>      Now I hear that the French are working on their own standard (the AFNOR
>      group).  All this is fine and good except that in all likelihood the
>      resulting standards will have about as much similarity with each other
>      as the French and English (natural) languages do (never mind the fact
>      that neither standard will have have much to do with existing practice)

Wrong.  Roger Scowen of NPL get the thing started; since the NPL is in
England he naturally got the thing started as a BSI project.  AFNOR are
not developing a rival standard;  they have been collaborating with the
BSI group for a long time now, and the Formal Specification is French work.
(While many people will find it the most confusING part of the BSI material,
it is arguably the least confusED.)  The whole thing has now become, I hear,
an ISO "work item", and the more recent BSI documents bear ISO reference
numbers.

>      That standard should be agreed upon not
>      just by the British and the French, but by ALL the major users of
>      PROLOG which includes (at the very least) most of Europe, Japan, and
>      the U.S.

Hear hear.  And don't forget the South Pacific (home of NU Prolog and CLP)
or Israel (home of Wisdom Prolog).

>      I took a
>      lot of heat for my imfamous PROLOG libraries, while the code quality
>      was perhaps inadequate, I believe that the concept was valuable.

Too right.

>           The last thing I would really like to see is some vast
>      improvement in the standard user interface tools.  Even if not all
>      hardware can support it, I would like to see some standard way to
>      access windows, i/o devices (i.e. mice), and or forth.

I understand that agreement on the Common Lisp binding for X is at least
a year away.  Plagiarism being the sincerest form of flattery, I suggest
that it might be an idea to wait for the Lisp people to do the work, and
then transliterate as much of it as possible.  Or would a 'curses'
binding be of more immediate use?  Either way, I don't see any need for
a standard way to access Forth; Postscript maybe, but not Forth (:-).

cdsm@ivax.doc.ic.ac.uk (Chris Moss) (03/24/88)

In article <7847@agate.BERKELEY.EDU> lagache@violet.berkeley.edu (Edouard Lagache) writes:
>          The matter of greatest concern for me is the question of whose
>     standard will be the standard?  The BSI group is a British standard;
>     Now I hear that the French are working on their own standard (the AFNOR
>     group).  All this is fine and good except that in all likelihood the
>     resulting standards will have about as much similarity with each other
>     as the French and English (natural) languages do (never mind the fact
>     that neither standard will have have much to do with existing practice)
>     - This is progress!?!

You don't understand the way standardizing works. There has been
plenty of communication between AFNOR and BSI -- the two groups ARE
trying to work together. (That doesn't mean they will agree: the
current AFNOR proposal throws out operator definitions altogether and
makes ";" the end of statement marker!) Also the formal semantics has
been fleshed-out by members of AFNOR. Richard's certainty that the
Prolog world begins and ends with Edinburgh is not shared in France!
ANSI has so far declined to set up a Prolog committee.
The AIM is to have one standard. Here's hoping...

Chris Moss.

ok@quintus.UUCP (Richard A. O'Keefe) (03/25/88)

In article <240@gould.doc.ic.ac.uk>, cdsm@ivax.doc.ic.ac.uk (Chris Moss) writes:
> Richard's certainty that the
> Prolog world begins and ends with Edinburgh is not shared in France!

I have no such certainty.  I think the Prolog world includes Israel,
Japan, Australia, Portugal, the USA, Hungary, China[*], and all sorts of
places.  The plain fact of the matter is that there are two sorts of
Prolog systems:  ones whose authors have tried to provide some sort of
compatibility with other Prologs, and ones whose authors have let their
imaginations rip.  What the compatible Prologs are compatible with is
not Prolog-II or Waterloo Prolog, but Clocksin&Mellish.

[*] I am credibly informed that the PRC uses an unauthorised translation
    of Clocksin & Mellish as the main Prolog text, so presumably the
    French Prologs are of small concern to them.

lagache@violet.berkeley.edu (Edouard Lagache) (03/28/88)

In article <795@cresswell.quintus.UUCP> ok@quintus.UUCP (Richard A. O'Keefe) writes:
}>In article <7847@agate.BERKELEY.EDU>, lagache@violet.berkeley.edu (Edouard Lagache) writes:
}>>           The matter of greatest concern for me is the question of whose
}>>      standard will be the standard?  The BSI group is a British standard;
}>>      Now I hear that the French are working on their own standard (the AFNOR
}>>      group).  All this is fine and good except that in all likelihood the
}>>      resulting standards will have about as much similarity with each other
}>>      as the French and English (natural) languages do (never mind the fact
}>>      that neither standard will have have much to do with existing practice)
}>
}>Wrong.  Roger Scowen of NPL get the thing started; since the NPL is in
}>England he naturally got the thing started as a BSI project.  AFNOR are
}>not developing a rival standard;  they have been collaborating with the
}>BSI group for a long time now, and the Formal Specification is French work.
}>(While many people will find it the most confusING part of the BSI material,
}>it is arguably the least confusED.)  The whole thing has now become, I hear,
}>an ISO "work item", and the more recent BSI documents bear ISO reference
}>numbers.
}>
	Thank God!  Sorry if my original note was somewhat pessimistic, but
	that is how the world is making me feel these days.

}>>           The last thing I would really like to see is some vast
}>>      improvement in the standard user interface tools.  Even if not all
}>>      hardware can support it, I would like to see some standard way to
}>>      access windows, i/o devices (i.e. mice), and or forth.
						     ^^^^^^^^
						     Sorry folks, this is
						     a typo!  It should
						     read "so forth"

	Who says it is such a good idea to keep students up late at
	night!
}
}						Edouard Lagache
}						lagache@violet.berkeley.edu