Path: utzoo!mnetor!uunet!lll-winken!lll-tis!mordor!sri-spam!sri-unix!quintus!ok From: ok@quintus.UUCP (Richard A. O'Keefe) Newsgroups: comp.lang.prolog Subject: Re: BSI Syntax Message-ID: <770@cresswell.quintus.UUCP> Date: 14 Mar 88 05:50:01 GMT References: <227@gould.doc.ic.ac.uk> Organization: Quintus Computer Systems, Mountain View, CA Lines: 38 In article <227@gould.doc.ic.ac.uk>, cdsm@doc.ic.ac.uk (Chris Moss) writes: > > (3) The attempt to describe Prolog control structures as *syntax* > > is fundamentally misdirected. > > I assume that by 'control structures' you mean operators such as 'and' and > 'or' -- I hate the word 'control' for these, they're supposed to be > logical though of course they do have a control component! > 1. Manufacturers demand some consistency; they don't want to find that > someone has inverted the priorities of 'and' and 'or' so a program means > something entirely different to the way it reads. Freezing the priorities of those operators is all that is required for this consistency. > 2. To enable Prolog readers to be written with decent error checking and > reporting facilities. I've recently seen a research report comparing > Prolog with several other programming languages and it sure comes off > worse! The basic reason is that EVERYTHING is operators: all a parser can > say is "Syntax error ... here". A parser can actually give much more precise messages than that. Was Lisp one of the languages Prolog was compared with? There really isn't much a Lisp parser can tell you either. Note that a syntax error in line 1 of a Pascal program can completely derail the parser for the rest of the file. The units that a Prolog parser works with are seldom more than a few lines long. > You may think there is low diversity but I would say the opposite. Whereas > the basic semantic ideas of Prolog are well-defined there have been a > number of entirely different syntaxes used to express that (I can think of > at least 6 - the original Marseille, Edinburgh, microProlog, Waterloo/VM, > LM Prolog, Prolog II) of which all but the first are commercial products. The mandate of the BSI committee was EXPLICITLY to derive a standard based on EDINBURGH Prolog. I'm not saying anything against the other languages, just pointing out that the actually piece of paper which said in '84 what the BSI committee was going to do said Edinburgh Prolog. So what the other languages do is irrelevant.