[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Dylan Constants
- To: rwk@crl.dec.com
- Subject: Re: Dylan Constants
- From: duncan@stowe.bdsw.com (Rich Duncan)
- Date: Fri, 23 Oct 1992 13:31:53 EDT
- Cc: Scott_Fahlman@SEF1.SLISP.CS.CMU.EDU, info-dylan@CAMBRIDGE.APPLE.COM
>From: Bob Kerns <rwk@crl.dec.com>
>
>I'm not sure what you think #define does, or what you think
>DEFINE does, or what bit of the semantics you're comparing,
>but in my ontology this doesn't compute...
>
>From: dyer@eagle.sharebase.com (Scot Dyer)
>
>What?! I don't know about %REPLACE, but #define is at a completely
different
>level than the rest of C's syntax (the pre-processor), but Dylan's define
forms
>are just forms...
Thank you both for the clarification. My comment was SIMPLY an
observation that if the designers change Dylan's DEFINE to mean "define
read-only constant", it will be closer to one of the two primary uses of the
C preprocessor's #define directive.
I am aware of the differences between DEFINE and #define, would never
advocate a Dylan version of cpp and think #define is a completely terrible
way of defining constants compared to DEFINE or DEFCONSTANT in CL. So did
the ANSI C committee, since the "const" directive in ANSI C can be used to
define a typed, lexically scoped constant. So my response is "yes I
completely agree," and "you are preaching to the choir."
However, there is still a point that I feel is worth making. I believe the
following statement (page 15) is crucial to Dylan's success:
Dylan is not intended primarily for the Lisp community. The real
target audience of Dylan is application developers now using
languages such as C, C++ and Pascal...
If this is truly the target audience, then I can assure you that many of
these individuals are not concerned with "ontology". They define constants
with #define (for the most part), and while they may not appreciate the vast
difference between #define and DEFINE (yet), they will appreciate the fact
that the only difference is to "drop the '#' and put parens around it."
This is just one microstep in the direction of achieving Dylan's goal
(mine too).
-Rich
--
Rich Duncan Internet: duncan@bdsw.com
Black Diamond Software, Inc. Compuserve: 75540,2532
127 Wilton Road East Phone: (203)438-3050
Ridgefield, CT 06877 Fax: (203)438-1447