!TITLE Syntax Errors
!KEY
Syntax errors are detected during  reading.    Each  clause,  directive  or  in
general any term read-in by the built-in procedure read that fails to comply to
syntax requirements is displayed on the terminal as soon as it is read.  A mark
indicates  the  point  in  the string of symbols where the parser has failed to
continue analysis.  e.g.

            member(X,X:L).

gives:

            ***SYNTAX ERROR***
            member(X,X
            ***HERE***
            : L).

if ':' has not been declared as an infix operator.

If the syntax error occured in a file being consulted then you should edit  the
file  and  reconsult  it  (try  using  redo).  Syntax errors do not disrupt the
consulting/reconsulting of a file in any way except  that  the  term  with  the
syntax  error  will  be  ignored (it couldn't be read after all). All the other
clauses in the file will have been read-in  properly.    If  the  syntax  error
occurs  at  top-level  then  you  should  just retype the question.  Given that
Prolog has a very simple syntax it is usually quite  straight  forward  to  see
what  the  problems  is  (look  for  missing  brackets in particular).  See the
section 1.14 for details of the syntax for Prolog terms.  You should also  read
the "Programming in Prolog" book mentioned earlier if you are confused and want
further clarification and examples.

