Path: utzoo!mnetor!uunet!seismo!sundc!pitstop!sun!quintus!ok
From: ok@quintus.UUCP (Richard A. O'Keefe)
Newsgroups: comp.lang.prolog
Subject: Re: BSI Prolog terms of reference
Message-ID: <951@cresswell.quintus.UUCP>
Date: 9 May 88 05:01:23 GMT
References: <831@cresswell.quintus.UUCP> <249@gould.doc.ic.ac.uk> <278@gould.doc.ic.ac.uk>
Organization: Quintus Computer Systems, Mountain View, CA
Lines: 107
Keywords: misdirection, misunderstanding, standards

This is a reply to article <278@gould.doc.ic.ac.uk>,
by cdsm@ivax.doc.ic.ac.uk (Chris Moss).
My failure to respond to a point should not be taken to mean
that I agree with him.

>                                                            It seemed
> to me that Richard was criticizing the introduction of any ideas that
> arise from sigmaProlog and wanting the committee to disassociate
> themselves totally from those ideas.  I found it hard to believe
> that, knowing that Frank McCabe was involved in the standardization
> process (he quoted him at the Boston conference saying there'd be a
> standard within a year), he should be surprised that he would want to
> introduce ideas drawn from that dialect of Prolog. 

My point has always been that micro-PROLOG and Sigma Prolog are sufficiently
different from the Edinburgh family (in particular, they do not have the same
_kinds_ of data structures) that it is a mistake to try to mix the two.  As
it happens, there is precisely one idea in micro-PROLOG that it would have
made sense to try to add to an Edinburgh Prolog, namely the "module" system.

I believe I am the only person associated with the Prolog standardisation
effort who from the start has been arguing _against_ his own commercial
interests (many members of the committee have no commerical axe to grind).
Of course, I may be the only one who is not convinced that the brand he is
associated with is already technically perfect.  Many Prolog implementors
(I do not have Frank McCabe in mind here) seem to be unaware that their
"enhancements" are bad Software Engineering (e.g. write-only variables).

> Having taken that decision, the strategy of providing two syntaxes
> united by a common semantics was, I suggest, the right one. Thus
> there was an Edinburgh-based syntax and a micro/sigma based syntax.
> What Richard was criticizing was the current version of the
> Edinburgh-based syntax. Thus his objection that it was affected by
> sigma is mysterious to me. We haven't tried to make Edinburgh look
> like sigma or vice-versa (it would be totally impossible anyway).
> We've tried to keep a multiplicity of syntaxes.

NO!  Radical mistake!  I have _never_ alleged that the BSI __syntax__
(at least, the version that Chris Moss works on) has been influenced
by Sigma Prolog.  I have alleged that the BSI _standard_ has been so
influenced, and that it ought not to have been, but that's another
story.

> Thus I assumed that Richard and others accepted this twin-track
> policy. If they don't maybe we should go back and discuss where the
> problem is. Is it simply an unworkable ideal, or is it (as I suspect)
> that he feels that the BSI committee was bound to keep only to
> Edinburgh and was therefore betraying its principles by being
> pluralist?

> Where the strategy has run into serious problems is, I would suggest, at
> the level of built-in-predicates.

That is to say, that "the strategy of providing two syntaxes united by a
common semantics" "has run into serious problems" because there ISN'T a
common semantics to start with.  Which is to say, it is as if a committee
had decided to produce a standard for Fortran with two syntaxes (a Fortran
syntax and a Basic syntax) united by a common (Fortran+Basic) semantics,
and after a couple of years it dawned on them that the *real* difference
between Fortran and Basic was _semantics_, not _syntax_.  What puzzles me
is why they ever thought there was a common semantics in the first place.

It hadn't ever dawned on me that BSI Prolog's "other" syntax was supposed
to be like micro-PROLOG.  Perhaps it is stupid of me, but it was always
called the "LISP-like" syntax, and I took it to mean that this was to be
a new Lisp-like syntax for an otherwise Edinburgh-Prolog-like base.
Indeed, I offered a proposal for such a syntax myself (my so-called
"Transport Syntax").  I think that its syntax is easily the worst thing
about Lisp, so I would scream blue murder if it was to be the only syntax,
but I have been advocating that the standard should provide for multiple
syntaxes longer than the BSI committee have.  No quarrel there (except that
I think that at least _one_ of the syntaxes should be Edinburgh-compatible,
and the BSI committee don't).  If someone wants to produce and standardise
a Query-by-Example way of writing Prolog, good luck!

There hasn't *been* a Lisp-like syntax to criticise until recently.
Since my main concern is to protect existing Prolog users, I haven't
bothered commenting on it, because providing an additional syntax isn't
going to break anything.  (It will, however, break every Z-Prolog program
in sight, unless I am mistaken, but if ZYX want to shoot themselves in
the foot that's their business.  It is also more than different enough to
do no good to micro-PROLOG, which also doesn't bother me much.)

> Part of the problem in the BSI committee is probably that very few of
> the actual committee regularly used an Edinburgh Prolog.   ...
> Most such committees only work by having
> one or two dynamic leaders who drag everyone else along. The BSI
> committee hasn't had such people who are prepared to give their time, ...

I only have to keep Chris Moss talking, and he'll say far more damning
things about the BSI committee than I could ever get away with.

> >> [Chris Moss] wrote:
> >>   I don't object to you arguing for the standard to be based on Quintus.
> >>   You might be considered to be failing your employers if you didn't.
> And if you look at my statement, you'll discover that my statement
> also does not presuppose that he is arguing for Quintus. Ok it's
> ambiguous, but what I actually MEANT was
>   "Richard I would not object if you DID argue for the standard to be
> based on Quintus".

But since I never have done that, and have given no evidence that I ever
intend to, and since it would be a morally bad thing to do, why say it?

And no, it isn't ambiguous at all; the only interpretation justified by
the syntax is the one which takes the embedded sentence to be assumed true
by the speaker.  [Long English lesson deleted.]