From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (from weis@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id UAA01647 for caml-red; Mon, 21 Aug 2000 20:04:42 +0200 (MET DST) Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id KAA26780 for ; Mon, 21 Aug 2000 10:58:30 +0200 (MET DST) Received: from pauillac.inria.fr (pauillac.inria.fr [128.93.11.35]) by concorde.inria.fr (8.10.0/8.10.0) with ESMTP id e7L8wRr18960; Mon, 21 Aug 2000 10:58:27 +0200 (MET DST) Received: (from weis@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id KAA27538; Mon, 21 Aug 2000 10:58:26 +0200 (MET DST) From: Pierre Weis Message-Id: <200008210858.KAA27538@pauillac.inria.fr> Subject: Re: Question on language design (keywords vs Pervasives) In-Reply-To: <87wvhb907p.fsf@localhost.localdomain.> from John Prevost at "Aug 20, 100 03:55:22 pm" To: jmp@arsdigita.com (John Prevost) Date: Mon, 21 Aug 2000 10:58:26 +0200 (MET DST) Cc: caml-list@inria.fr X-Mailer: ELM [version 2.4ME+ PL28 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: weis@pauillac.inria.fr > On the other hand, allowing raise to be redefined has the advantage > that raise could be replaced with a new function of the same type that > does some extra work and then calls raise normally. I can't think of > a really good example at the moment, though. You're right, there is no really good example that uses redefinition of raise. That's why the advantage to be able to redefine it may overcome the inconvenience of not being always sure of its meaning. > My personal feeling is that it's good for the design of a language to > make as few things keywords as possible. For an example of too many > keywords, see SQL, where the definition of the language not only > reserves many many words, but also provides a list of possible future > keywords (and mentions that this list is not exhaustive.) SQL does, > however, provide a way to escape identifiers which would otherwise > conflict with reserved words. > > John. You're right, we don't want to have zillions of keywords. On the other hand, you also need to have some level of confidence into the words you use in the language, otherwise you can write horrors as the famous if else then else else then when then and else are not reserved. Pierre Weis INRIA, Projet Cristal, Pierre.Weis@inria.fr, http://cristal.inria.fr/~weis/