Re: Quoted atoms are no longer operators

Ulrich Neumerkel <[email protected]>
Newsgroups gmane.comp.ai.prolog.swi
Message-ID <[email protected]>
Jan Wielemaker:
>> On 22-11-13 16:36, Jan Wielemaker wrote:
>>>    - Quoted atoms are no longer operators.
>>
>> also about this change, I'd like to know: is there a (very) good reason?
>> If not, I'd like to add my voice to what Richard said [1]: this is a bad
>> idea, making e.g. operators with spaces in them impossible.
>
>True. I've never seen them in the wild though. Putting white space
>inside identifiers is a pretty bad idea anyway because many reformatting
>tools (or editor commands) can silently change this, breaking your code
>and anyway, the difference between 'a<space>b' and 'a<tab>b' may be
>invisible and the difference between 'a b' and 'a  b' is poorly visible,
>in particular when using variable pitch fonts.

Your statement needs a clarification.  ISO does not define 'a<tab>b'
as valid syntax.  Nor any other layout except the space. For exactly
the reason you give.

However, on a very formal basis, you can decare this as an extension
due to 5.5.1 Syntax.  Many systems do this, the notable exceptions
are GNU and SICStus.

http://www.complang.tuwien.ac.at/ulrich/iso-prolog/conformity_assessment#5

So we have here the same pattern again:

1mo: non-adherence to the standard

2do: blaming the standard for something it forbids, deriding the
"tiny" issues the standard deals with.

3tio: introduction of incompatibile features to heal the disease
created in 1mo.

>Richard's A '\uXXXX' B argument makes a little more sense. On the other
>hand, if you want it this ugly, '\uXXXX'(A,B) is just as good (or should
>I say ugly).

A better criterion is conformance/nonconformance. The ISO syntax for
above is '\xXXXX\', btw.

>This is a quite isolated issue.

...
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.