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,fc52c633190162e0 X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news2.google.com!border1.nntp.dca.giganews.com!nntp.giganews.com!local01.nntp.dca.giganews.com!nntp.comcast.com!news.comcast.com.POSTED!not-for-mail NNTP-Posting-Date: Fri, 06 Apr 2007 12:55:51 -0500 Sender: jsa@sirius.goldenthreadtech.com Newsgroups: comp.lang.ada Subject: Re: why learn C? References: <1172144043.746296.44680@m58g2000cwm.googlegroups.com> <1172161751.573558.24140@h3g2000cwc.googlegroups.com> <546qkhF1tr7dtU1@mid.individual.net> <5ZULh.48$YL5.40@newssvr29.news.prodigy.net> <1175215906.645110.217810@e65g2000hsc.googlegroups.com> <1175230700.925143.28490@n59g2000hsh.googlegroups.com> <1btkgzzj6zimp.acsq8mkzqz1w$.dlg@40tude.net> <1175488143.324741.283480@y80g2000hsf.googlegroups.com> <9l1Rh.7648$%G4.3596@trndny05> From: jayessay Organization: Tangible Date: 06 Apr 2007 14:05:33 -0400 Message-ID: User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.4 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii NNTP-Posting-Host: 24.61.34.12 X-Trace: sv3-FSlFL5TIneXNxce7hCm+1IrC+DCBeBpngnDh9RL7TaIDH4e4zvH4LiRxQicKjtIhzjrmkDnQV2TeGSZ!fAKEnHtM0iV2Q7i2iCRiB/ZXYRqJNr76dBdLKWMiN/BkIbNhjAW2qHFwHWBDYOTn35UtvkD66RU0!0iaAA1isFTrgOi/E8NGrnCZY X-Complaints-To: abuse@comcast.net X-DMCA-Complaints-To: dmca@comcast.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.34 Xref: g2news1.google.com comp.lang.ada:14818 Date: 2007-04-06T14:05:33-04:00 List-Id: Ray Blaak writes: > Hyman Rosen writes: > > > jayessay wrote: > > > Please. You are embarassing yourself with this. > > > > I notice you have no comment on the lack of mind-numbingness > > in my C++ template primality tester. Given that you're wrong > > about C++, I have no trouble believing that you're wrong about > > Lisp as well. > > This is getting stupid. Jon probably knows both C++ templates and definitely > knows Lisp quite well. > > The fact that you can code up a Car/Cdr abstraction in some programming > notation does note make it lisp like. You can code these list abstractions in > any language you choose, and that does not make a lisp. Exactly. One wonders why that's hard to understand. > What makes something a Lisp is a whole philosophy of symbolic, > dynamic and introspective (and protected!) programming that C++ > simply is not natively capable of. Also, Lisp's list syntax notation > is also critical (Dylan be damned!), as that syntax is what allows > the whole "programs as data" paradigm to practically work. Again, on the mark. > Your basic point that C++ templates need not be considered as a > fundamental evil is properly taken. In fact C++ in general tends to > get a bad rap in c.l.a. The simple fact of the matter is that a > professional programmer worth their salt should know how to use C++ > properly so as to readily and easily avoid its stupidities and > program safely. I agree with this also. > would you not do so at run time, when you actually need the value? Even if > it's for a constant, you can compute it lazily, or during initialization, > making it externally read only, etc. That is a much much clearer and > understandable way to present things. Yes, as I stated, the example was artificial (and silly). > The proper way to program at compile time should be with traditional > program statements that happen to run in the "build" phase. This is > much more direct and clearer to understand. I note that you can > actually do that with Lisp/Scheme. Yes. Quite. No "preprocessor" nonsense needed or wanted. Also no "funny weird extra little language" (aka templates) needed or wanted either. Full language, libs, external environment (databases, networking, etc.) available at all phases for metaprogramming. /Jon -- 'j' - a n t h o n y at romeo/charley/november com