From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,703c4f68db81387d X-Google-Thread: 109fba,703c4f68db81387d X-Google-Thread: 115aec,703c4f68db81387d X-Google-Thread: f43e6,703c4f68db81387d X-Google-Attributes: gid103376,gid109fba,gid115aec,gidf43e6,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news1.google.com!newsread.com!newsprint.newsread.com!63.218.45.11.MISMATCH!newshosting.com!nx02.iad01.newshosting.com!novia!border1.nntp.dca.giganews.com!nntp.giganews.com!local01.nntp.dca.giganews.com!nntp.rcn.net!news.rcn.net.POSTED!not-for-mail NNTP-Posting-Date: Tue, 29 Mar 2005 10:39:07 -0600 Sender: jsa@rigel.goldenthreadtech.com Newsgroups: comp.lang.ada,comp.lang.c++,comp.realtime,comp.software-eng Subject: Re: Teaching new tricks to an old dog (C++ -->Ada) References: <4229bad9$0$1019$afc38c87@news.optusnet.com.au> <1110032222.447846.167060@g14g2000cwa.googlegroups.com> <871xau9nlh.fsf@insalien.org> <3SjWd.103128$Vf.3969241@news000.worldonline.dk> <87r7iu85lf.fsf@insalien.org> <1110052142.832650@athnrd02> <1110284070.410136.205090@o13g2000cwo.googlegroups.com> <395uqaF5rhu2mU1@individual.net> <1111607633.301232.62490@z14g2000cwz.googlegroups.com> <1111628011.160315.134740@o13g2000cwo.googlegroups.com> <1111794348.874993.298340@g14g2000cwa.googlegroups.com> <1111827755.497376.232760@z14g2000cwz.googlegroups.com> <4pydnSVmk9XzsdTfRVn-hw@comcast.com> From: jayessay Organization: Tangible Date: 29 Mar 2005 11:44:29 -0500 Message-ID: User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii NNTP-Posting-Host: 209.6.25.79 X-Trace: sv3-Ea1HNXBJWK8YSPs5zWPhYL/mDmu6spJAzO+GcZaLOqtgBTGSzHCt18doRuKwAXlumxspF6HghVjMM8t!TapNUNwyKxGHZaZRJmPOhBtq1krnC098Vhcb+fBPHOFYGzRxLz8U1v4KXahHmZzLNUCXICnTk2Yv X-Complaints-To: abuse@rcn.net X-DMCA-Complaints-To: abuse@rcn.net X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly X-Postfilter: 1.3.32 Xref: g2news1.google.com comp.lang.ada:10125 comp.lang.c++:47806 comp.realtime:1815 comp.software-eng:5457 Date: 2005-03-29T11:44:29-05:00 List-Id: "Paul Mensonides" writes: > jayessay wrote: > > "Paul Mensonides" writes: > > >> Lisp macros cannot produce partial syntax either, whereas C/C++ > >> macros can (e.g. on macro can create a '{' and another separate > >> invocation can create the closing '}'). > > > > Again, that would be the sort of thing you would use reader macros. > > It's worth noting again that Lisp macros (the kind you generally mean > > when unqualified) do not work on text, they work on the syntax trees > > passed to them. > > Neither do macros in C or C++. They operate on tokens. In any > case, the difference is meaningless. Actually the difference is very important. > The only thing that matters is what the semantics are Indeed. > (such as name binding). Lisp macros are easily inferior to Scheme > macros in that sense. No, they are a proper superset of Scheme macros. The hygiene issue is largely irrelevant due to CL being a lisp2 (while Scheme is a lisp1). > >> Jerry is correct to say that they do similar things--they parametize > >> code with code. > > > > But that is not really what they do. It is _one_ thing you can _use_ > > them to do. > > That is exactly what they do. No, but I don't think you will understand this anytime soon. Let me ask you here, just _why_ do you think this? Maybe more to the point, what do you think "parameterization" means here? It may be that we are just not on the same page with the term definitions. > in the form of a syntax tree or not. The kind of thing that you > seem to be referring to is what Haskell does instead. No, plain Haskell has no facility for this, but there are macro systems that have been placed on it to provide some of the capability. > >> The main differences is that in Lisp (etc.) their > > > > I think the main differences are the ones I listed. > > Obviously. ;-) /Jon -- 'j' - a n t h o n y at romeo/charley/november com