[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: What?



Rainer Joswig wrote:
> 
[snip]
> > Well, I cannot help, but this very much reminds me of infix syntax :-)
> >
> > The usage of punctuation always counted as the distinguishing feature of
> > infix syntax.
> 
> Hmm, why do you think Lisp's (or in prefix Dylan years ago) usage of
> "prefix" syntax needs to be primitive? In reality prefix is more
> complex and infix is not really infix.

I did not mention primitive. Syntax cannot be primitive, but semantics can. This is just like a discussion of whether french or german is a better language. As long as they are used to convey sensible
content, both are good. Which is better is a very personal impression.
The syntax debate should not be rekindled at this point. I marked my statement
with a smiley, and do not want to get emotional. Infix is a fact in mathematics.
Prefix is a fact given by easier parseability. Both have its merits but a completely
prefix language would be unwieldy at least. So even Lisp has to make compromises
where it would hurt a mortals brain too much.

> 
> There are quite a few diffent ways how Lisp uses "syntax".
> 
> - some examples of data type syntax:

[examples where Lisp departs from the pure idea of prefixness snipped]

> Example:
> 
>   1 + 2     <- what can I "touch" here with a cursor to mean the whole
>                expression without ambiguity? I have to "select" the
>                whole expression.
> 
>   (1 + 2)   <- here I can click on the parentheses and I can manipulate
>                the whole expression. The expression has a grouping and
>                a visual "handle".

I can imagine that this was (is) a feature in presence of a cursor-based interface,
but if you use a mouse for selecting, this becomes a lesser issue. A clever editor could
show all possible expressions underlaid with different shades of green from that point.

> 
> I can understand that Dylan does no longer follow above ideas and tries
> to be compatible with the mainstream. I also can understand that
> maintaining
> two (or more) surface syntaxes would not be a really practicable idea.

It would probably ignite the same flamewars _inside_ of the Dylan community as
between some members of the Dylan and CL communities. I personally do not want that.

> I also understand that one might not want to switch syntax again.
> But the Lisp syntax has its merits and it has several usage types (see
> above).


Definitively.


	Gabor