Return-Path: Delivered-To: apmail-ant-dev-archive@www.apache.org Received: (qmail 62091 invoked from network); 11 Jul 2005 02:09:42 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 11 Jul 2005 02:09:42 -0000 Received: (qmail 66051 invoked by uid 500); 11 Jul 2005 02:09:40 -0000 Delivered-To: apmail-ant-dev-archive@ant.apache.org Received: (qmail 65995 invoked by uid 500); 11 Jul 2005 02:09:40 -0000 Mailing-List: contact dev-help@ant.apache.org; run by ezmlm Precedence: bulk List-Unsubscribe: List-Help: List-Post: List-Id: "Ant Developers List" Reply-To: "Ant Developers List" Delivered-To: mailing list dev@ant.apache.org Received: (qmail 65982 invoked by uid 99); 11 Jul 2005 02:09:40 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 10 Jul 2005 19:09:40 -0700 X-ASF-Spam-Status: No, hits=0.9 required=10.0 tests=DNS_FROM_RFC_ABUSE,HTML_20_30,HTML_MESSAGE X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: local policy) Received: from [12.11.148.122] (HELO relay2.ptc.com) (12.11.148.122) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 10 Jul 2005 19:09:37 -0700 Received: from hq-ex3fe1.ptcnet.ptc.com (132.253.201.60) by relay2.ptc.com with ESMTP; 10 Jul 2005 22:09:25 -0400 X-IronPort-AV: i="3.93,278,1115006400"; d="scan'208,217"; a="60082456:sNHT122431486" Received: from [132.253.40.73] ([132.253.40.73]) by hq-ex3fe1.ptcnet.ptc.com with Microsoft SMTPSVC(6.0.3790.1830); Sun, 10 Jul 2005 22:10:58 -0400 Message-ID: <42D1D531.8060804@ptc.com> Date: Sun, 10 Jul 2005 21:10:57 -0500 From: Jess Holle User-Agent: Mozilla Thunderbird 1.0.2 (Windows/20050317) X-Accept-Language: en-us, en MIME-Version: 1.0 To: Ant Developers List Subject: Re: XJ - xml extension for Java References: <42C28C81.9060508@it.fts-vn.com> <8f836c66050704084949eda355@mail.gmail.com> <42CA8BEC.6030306@apache.org> <42CB4244.2020303@it.fts-vn.com> <42CF6156.6040805@ptc.com> In-Reply-To: Content-Type: multipart/alternative; boundary="------------060000020407040200000508" X-OriginalArrivalTime: 11 Jul 2005 02:10:58.0273 (UTC) FILETIME=[C6EE0D10:01C585BD] X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N --------------060000020407040200000508 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Kevin Jackson wrote: >>>I've skipped Java 1.5 for various reasons: >>>1 - the 'enhanced for loop' is just crap >>> >>> > >I notice that few people ares disputing this one... > > Actually I don't see anything wrong with the new for loop and use it a fair amount. It's just unimportant syntactic sugar in the end, though. >>How *anyone* does not need generics is beyond me. This is *huge* in my >>book. The amount of silly double-checking I can avoid by knowing the >>compiler has done this checking for me is immediately worthwhile. Being >>able to type: >> >> >So far I haven't needed them. I haven't been hampered by the old >(<=1.4) collections in the slightest. I've not come across a problem >and thought, "this would be so much easier with generics". I guess >I'm just used to casting/boxing by myself. > > Boxing/unboxing is not a big deal (though automating this is /somewhat /nice). The issue is the added possibility of stupid mistakes in the casting area (or accidentally passing the wrong type to a put(), add(), etc). Also, they clear up inter-developer documentation/communication regarding complex collection usage very quickly. >I agree that pushing the correctness problem into the compilation, >instead of the runtime phase is valuable in general. > > Exactly. Compile-time checking wherever it is net time savings to the developer and does not hinder runtime performance is a very good thing. In the case of generics, I believe they're a big time saver overall. >>I already have make heavy usage of annotations for JMX -- which is the >>other big reason for Java 5: built-in support for JMX and JSR 160 >>(rather than the ugly mish-mash of generally proprietary JMX >>communication protocols that proceeded this). >> >> >I've not had chance to play around with JMX yet. But in general, >adding annotations to the language means that you have declarative >parts of code mixed in with procedural code (I think this was >mentioned previously). So far (to me) it looks like the annotations >were added because .net had them. Indeed a lot of the Java5 changes >suggest a little too much "me too", not real language innovations. > > There are certainly cases not to use annotations, e.g. whenever you really want late binding of the metadata (though you could always have the late-binding data override if/when present and fall back to the annotation data only when it is not present...) On the other hand, there are many occasions where developers metadata place anywhere other than in the source file will simply get out of sync with the source code, be neglected entirely by developers, or not found by those maintaining the overall system. Code generation is clearly a way around some of these issues, but it has it's own issues -- chief amongst them being the notion that Java developers would have no other, simpler redress this issue without annotations. >Jikes is a fabulous compiler (some people prefer the eclipse >compiler), and it certainly speeds up my development (better error >messages, quick compiles, so not tempted to compile only one file etc >etc). > > It is not fabulous in my book if it holds me back from using appropriate Java 5 concurrency, generics, and JMX features in projects where Java 5 is an option! >WebLogic on the other hand is holding me back, and I'd switch to >another appserver at the drop of a hat (if only the customers weren't >fixated on WebLogic). > > Is WebSphere keeping up any better? I've not heard even a rumor of a Java 5 JRE from IBM, much less support for it in their server products. >Anyway, we've veered way off-topic from the original thread now - I >can barely see my way back to civilisation from here :) > > Nuff said. I'll stop my blabbering... -- Jess Holle --------------060000020407040200000508--