next up previous index
Next: Operators Up: Syntax Previous: Formal definition of clause   Index

Subsections


Syntax Differences between ECLiPSe and other Prologs

Properties of ECLiPSe

Some particularities exist in the default syntax of ECLiPSe. Most of these properties can be configured and are in fact changed by the compatibility packages.


Changing the Parser behaviour

Some of these properties can be changed by selecting one of the following syntax options using set_flag/2. The following options exist:
blanks_in_nil
allow blanks between the brackets in [].
limit_arg_precedence
do not allow terms with a precedence higher than 999 as structure arguments, unless parenthesised.
nested_comments
allow bracketed comments to be nested.
nl_in_quotes
allow newlines to occur inside quotes.
no_blanks
do not allow blanks between functor an opening parenthesis
no_other_quotes
do not allow string quotes inside atom quotes and vice versa.
$VAR
terms of the form '$VAR'(N) are printed in a special way by all the predicates that obey operator declarations (i.e. write, writeq, print and partly printf). '$VAR'(0) is printed as A, '$VAR'(25) as Z, '$VAR'(26) as A1 and so on. When the argument is an atom or a string, just this argument is printed.
based_bignums
Allow base notation even to write integers longer than the wordsize (i.e. they are always positive).
Syntax option settings are local to the module where they were performed. They are switched on and off as follows:
:- set_flag(syntax_option, nl_in_quotes).
:- set_flag(syntax_option, not no_blanks).

next up previous index
Next: Operators Up: Syntax Previous: Formal definition of clause   Index

1999-08-06