🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.lang.prolog
Article #3187

BSI syntax

#3187
From: Richard A. O'Keefe
Date: Tue, 29 Mar 1988 11:54
47 lines
3202 bytes
I have been sending messages which are rather hard on BSI Prolog syntax.
Somewhat belatedly, I'd like to try to put these comments in perspective.

1.  I believe that an attempt to force a rigid distinction between code
    and data is misguided in *any* Prolog dialect, because that distinction
    does not correspond to anything real in the language.  I stand by my
    one-way US$100 wager.

    One of the BSI documents in my possession makes it clear, by showing
    Prolog code purporting to be a definition of consult/1, that consult/1
    is to be based on read/1.

2.  If BSI Prolog were just another dialect, or if BSI Prolog provided means
    whereby a programmer could install another definition of read/1 (such as
    the public-domain DEC-10 Prolog parser, or something that uses VM/PROLOG
    syntax, or something that uses BIM native syntax, or whatever), then a
    fair assessment of the intended syntax (as distinct from the grammar)
    would be "a pretty good compromise".

    In fact, I'd say that it is easily the best of the current fragments.

    I have complained about differences between BSI syntax and DEC-10 Prolog
    syntax.  A number of things in DEC-10 Prolog syntax have been unpopular
    or misunderstood, and many of the changes are well motivated.  But they
    are changes which will be imposed on Prolog users without their consent.
    It doesn't matter how good the BSI syntax is (and it has merits), if
    Prolog users *have* to use it, it will COST them.

3.  BSI Prolog provides a Prolog-like syntax and a Lisp-like syntax (though
    I do not yet know how you say which one you want).  Neither of these
    syntaxes, despite their merits, is sufficiently compatible with DEC-10
    Prolog to read many of my files.  That is, anyone who has existing
    DEC-10 Prolog, ALS Prolog, Arity/Prolog, &c code and wants to use a BSI
    conforming processor will apparently be forced to make many changes to
    their files if they want to use the Prolog-like syntax.  This is why
    the strictest attainable backwards compatibility is so important.  If
    BSI processors *offered* a standard syntax rather than *imposing* it,
    and provided a standard way to select syntaxes additional to the
    Prolog-like and Lisp-like ones, then vendors could offer
    compatibility modules to help their customers convert to the standard.  

As an example, consider Common Lisp.  The native syntax of Common Lisp is
differs in a great many details from the syntax of Interlisp, yet on the
Xerox Lisp Machines the two dialects use the same reader, with the differences
being concentrated in read-tables.  I like Common Lisp syntax, someone else
here likes Interlisp, and we can both use the syntax of our choice.  (Even 
for the same files...)
Technical Details
Message-ID: <834@cresswell.quintus.UUCP>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!water!watmath!clyde!att-cb!osu-cis!tut.cis.ohio-state.edu!mailrus!ames!pasteur!ucbvax!decvax!decwrl!sun!quintus!ok

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!water!watmath!clyde!att-cb!osu-cis!tut.cis.ohio-state.edu!mailrus!ames!pasteur!ucbvax!decvax!decwrl!sun!quintus!ok
From: ok@quintus.UUCP (Richard A. O'Keefe)
Newsgroups: comp.lang.prolog
Subject: BSI syntax
Message-ID: <834@cresswell.quintus.UUCP>
Date: 29 Mar 88 11:54:38 GMT
Organization: Quintus Computer Systems, Mountain View, CA
Lines: 47