Path: csiph.com!eeepc.pasdenom.info!news.pasdenom.info!news.dougwise.org!nntpfeed.proxad.net!proxad.net!feeder1-2.proxad.net!203.109.252.33.MISMATCH!newsfeeds.ihug.co.nz!lust.ihug.co.nz!ihug.co.nz!not-for-mail From: Lawrence D'Oliveiro Newsgroups: comp.lang.java.programmer Subject: Re: Java vs C++ Followup-To: comp.lang.java.programmer Date: Mon, 07 Feb 2011 15:52:05 +1300 Organization: Geek Central Lines: 24 Message-ID: References: <4d4d585c$0$81476$e4fe514c@news.xs4all.nl> <4d4d60dc$0$23763$14726298@news.sunsite.dk> <4d4d8322$0$41117$e4fe514c@news.xs4all.nl> NNTP-Posting-Host: 118-92-86-70.dsl.dyn.ihug.co.nz Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8Bit X-Trace: lust.ihug.co.nz 1297047126 9691 118.92.86.70 (7 Feb 2011 02:52:06 GMT) X-Complaints-To: abuse@ihug.co.nz NNTP-Posting-Date: Mon, 7 Feb 2011 02:52:06 +0000 (UTC) User-Agent: KNode/4.4.7 Xref: csiph.com comp.lang.java.programmer:26098 In message , Joshua Cranmer wrote: > On 02/06/2011 09:00 PM, Lawrence D'Oliveiro wrote: > >> In message, Joshua Cranmer >> wrote: >> >>> It's a macro generator that understands types and is heavily integrated >>> with the syntax of C++, but it is basically a way to automatically >>> generate code. >> >> You seem to be confusing one particular way of implementing >> generics/templates with the way the language feature is specified. Java >> generics could be implemented by a preprocessor that spat out >> first-edition Java code, for that matter. In fact, it effectively does, >> since the JVM seems to know nothing about generics. Would you then say >> that third-edition Java is nothing more than a “macro generator”? > > I make a minor distinction between syntactic sugar--a language feature > which is designed to replace specific syntax features for ease of coding > (e.g., for-each loops)--and macro processing, which is generally > unrestricted code or text generation. In that case, C++ templates are most certainly not macros.