Version française
Home     About     Download     Resources     Contact us    
Browse thread
[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: Brian Rogoff <bpr@b...>
Subject: Re: [Caml-list] function vs. parser
On Thu, 13 Sep 2001, Daniel de Rauglaudre wrote:
> > since "parser" is a good name for a type and at least in English
> > there are no good synonyms. If you start writing combinator parsers
> > you have to hack the keyword parser to be parser_t or _parser or
> > somesuch, which is a little ugly.
>
> 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. 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.

We'll not get into the Lisp vs Scheme debate here I think, but yeah,
you're right, managing the namespace is an old problem. Maybe in a
post-Unicode world everything will be OK.

> > Hey, I said it is a *petty* complaint! ;-)
>
> Well, there is some syntactic preprocessor for OCaml - I don't
> remember the name - which can do that...

Touche. Wow, I notice that the version of the manuals for that preprocessor
exceeds the OCaml version number. Now that is fast turnaround time!

-- Brian


-------------------
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