Version française
Home     About     Download     Resources     Contact us    
Browse thread
Re: [Caml-list] function vs. parser
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Krishnaswami, Neel <neelk@c...>
Subject: Re: [Caml-list] function vs. parser
Brian Rogoff [mailto:bpr@best.com] wrote:
> On Thu, 13 Sep 2001, Daniel de Rauglaudre wrote:
> >
> > Same problem with "type": in my parsers, I would like to
> > have "expr", "patt" and "type". I named it "ctyp", ugly too.
> > And "constraint"... which is named "constrain" in the OCaml parser.
> > It has been the problem with keywords since the Pascal language...
>
> It's funny that you should say that since the modern functional
> languages play more tricks with lexical syntax than more mainstream
> languages in order to carve up the limited namespace. We already use
> capitalization and also funny 'identifiers for type variables. In Dylan
> they rely on a bracketing convention for <types> to prevent clashes,
> but I think it's only a convention.

Yeah, it's a convention, since types are first-class values in Dylan.
Such conventions are easy to create in Dylan because it's way permissive 
about which characters are legal in identifiers than most languages 
are -- almost all punctuation is legal. This produces a different set 
of complaints, though: people are unhappy that they have to write 
"foo + bar", because "foo+bar" is a distinct identifier.

> In MLs, people generally don't seem to like such conventions (I've
> gotten disgusted looks when I use the C convention of suffixing  _t
> to type names in order to create a unique namespace for types :-) but
> the ugliness pops up somewhere else.

Doesn't Caml use such a convention to set the precedence of infix
functions, so that *.. has higher precedence that +..? I think that's
pretty neat actually. I find it much more readable than Haskell's
`backquote` mechanism.

> Maybe in a post-Unicode world everything will be OK.

Yeah, right. Combining characters and different code values with 
identical glyphs and the like make certain that the only result of 
Unicode adoption will be to increase the amount of confusion. I wonder 
if there's a computer equivalent to the second law of thermodynamics: 
the incoherence of a computer system always increases, or something 
like that. :)
 
--
Neel Krishnaswami
neelk@cswcasa.com
-------------------
Bug reports: http://caml.inria.fr/bin/caml-bugs  FAQ: http://caml.inria.fr/FAQ/
To unsubscribe, mail caml-list-request@inria.fr  Archives: http://caml.inria.fr