<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/'><id>tag:blogger.com,1999:blog-3376508392331888241.post966563545200475337..comments</id><updated>2008-07-16T15:06:43.904-07:00</updated><title type='text'>Comments on curious-attempt-bunny: On Returning To Java...</title><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://curious-attempt-bunny.blogspot.com/feeds/966563545200475337/comments/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3376508392331888241/966563545200475337/comments/default'/><link rel='alternate' type='text/html' href='http://curious-attempt-bunny.blogspot.com/2008/07/on-returning-to-java.html'/><author><name>Curious Attempt Bunny</name><uri>http://www.blogger.com/profile/04654980649772473807</uri><email>noreply@blogger.com</email></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>9</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-3376508392331888241.post-3867562134395723765</id><published>2008-07-16T15:06:43.904-07:00</published><updated>2008-07-16T15:06:43.904-07:00</updated><title type='text'>I know the feeling.  It is interesting how quickly...</title><content type='html'>I know the feeling.  It is interesting how quickly you get used to things like not using semi-colons or the default public modifier.  Still the thing that I miss most, unless I have to parse or create XML documents, is how you can process collections in Groovy.  I mean think of all the overhead when you want to iterate through a collection, find a given entry or entries and then use them to create or acquire other object types.  I can do that in a single line of code in Groovy (or two if I like to add some white space for readability) and like in 20 (if I am lucky) using Java.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3376508392331888241/966563545200475337/comments/default/3867562134395723765'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3376508392331888241/966563545200475337/comments/default/3867562134395723765'/><link rel='alternate' type='text/html' href='http://curious-attempt-bunny.blogspot.com/2008/07/on-returning-to-java.html?showComment=1216246003904#c3867562134395723765' title=''/><author><name>James E. Ervin, IV</name><uri>http://www.blogger.com/profile/08449037734048661986</uri><email>noreply@blogger.com</email></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://curious-attempt-bunny.blogspot.com/2008/07/on-returning-to-java.html' ref='tag:blogger.com,1999:blog-3376508392331888241.post-966563545200475337' source='http://www.blogger.com/feeds/3376508392331888241/posts/default/966563545200475337' type='text/html'/></entry><entry><id>tag:blogger.com,1999:blog-3376508392331888241.post-4785859408707546387</id><published>2008-07-15T08:20:30.534-07:00</published><updated>2008-07-15T08:20:30.534-07:00</updated><title type='text'>Ah, I missed the point. You're saying that because...</title><content type='html'>Ah, I missed the point. You're saying that because this is crazy code in Java:&lt;BR/&gt;&lt;BR/&gt;List list = new ArrayList() &lt;BR/&gt;&lt;BR/&gt;that this must be equally crazy in Groovy:&lt;BR/&gt;&lt;BR/&gt;def list = []&lt;BR/&gt;&lt;BR/&gt;The former is bad in Java because you're working against the language that wants to be able to statically type everything. The latter is good in Groovy because you're working with the language to reap the benefits of duck typing.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3376508392331888241/966563545200475337/comments/default/4785859408707546387'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3376508392331888241/966563545200475337/comments/default/4785859408707546387'/><link rel='alternate' type='text/html' href='http://curious-attempt-bunny.blogspot.com/2008/07/on-returning-to-java.html?showComment=1216135230534#c4785859408707546387' title=''/><author><name>Curious Attempt Bunny</name><uri>http://www.blogger.com/profile/04654980649772473807</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11885571763902067958'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://curious-attempt-bunny.blogspot.com/2008/07/on-returning-to-java.html' ref='tag:blogger.com,1999:blog-3376508392331888241.post-966563545200475337' source='http://www.blogger.com/feeds/3376508392331888241/posts/default/966563545200475337' type='text/html'/></entry><entry><id>tag:blogger.com,1999:blog-3376508392331888241.post-2081852946657804302</id><published>2008-07-15T08:11:35.245-07:00</published><updated>2008-07-15T08:11:35.245-07:00</updated><title type='text'>True. However, they are both idiomatic Java and Gr...</title><content type='html'>True. However, they are both idiomatic Java and Groovy code.&lt;BR/&gt;&lt;BR/&gt;If I go the List list = new ArrayList() route I trade more readable code on that line for casting code everywhere I retrieve something from the list.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3376508392331888241/966563545200475337/comments/default/2081852946657804302'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3376508392331888241/966563545200475337/comments/default/2081852946657804302'/><link rel='alternate' type='text/html' href='http://curious-attempt-bunny.blogspot.com/2008/07/on-returning-to-java.html?showComment=1216134695245#c2081852946657804302' title=''/><author><name>Curious Attempt Bunny</name><uri>http://www.blogger.com/profile/04654980649772473807</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11885571763902067958'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://curious-attempt-bunny.blogspot.com/2008/07/on-returning-to-java.html' ref='tag:blogger.com,1999:blog-3376508392331888241.post-966563545200475337' source='http://www.blogger.com/feeds/3376508392331888241/posts/default/966563545200475337' type='text/html'/></entry><entry><id>tag:blogger.com,1999:blog-3376508392331888241.post-2576661002278557260</id><published>2008-07-15T00:24:43.651-07:00</published><updated>2008-07-15T00:24:43.651-07:00</updated><title type='text'>These two declarations are not equivalent:def list...</title><content type='html'>These two declarations are not equivalent:&lt;BR/&gt;&lt;BR/&gt;def list = [] &lt;BR/&gt;List&amp;lt;SomeObject&gt; list = new ArrayList&amp;lt;SomeObject&gt;() &lt;BR/&gt;&lt;BR/&gt;But more like:&lt;BR/&gt;&lt;BR/&gt;// list of SomeObject&lt;BR/&gt;List list = new ArrayList() &lt;BR/&gt;&lt;BR/&gt;It reminds me how I hated pre-generics code, as it was quite error-prone.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3376508392331888241/966563545200475337/comments/default/2576661002278557260'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3376508392331888241/966563545200475337/comments/default/2576661002278557260'/><link rel='alternate' type='text/html' href='http://curious-attempt-bunny.blogspot.com/2008/07/on-returning-to-java.html?showComment=1216106683651#c2576661002278557260' title=''/><author><name>Ignacio Coloma</name><uri>http://www.blogger.com/profile/02874466783900738920</uri><email>noreply@blogger.com</email></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://curious-attempt-bunny.blogspot.com/2008/07/on-returning-to-java.html' ref='tag:blogger.com,1999:blog-3376508392331888241.post-966563545200475337' source='http://www.blogger.com/feeds/3376508392331888241/posts/default/966563545200475337' type='text/html'/></entry><entry><id>tag:blogger.com,1999:blog-3376508392331888241.post-1154722536094680711</id><published>2008-07-14T20:13:44.955-07:00</published><updated>2008-07-14T20:13:44.955-07:00</updated><title type='text'>I saw a blog comment somewhere on http://tapestryj...</title><content type='html'>I saw a blog comment somewhere on http://tapestryjava.blogspot.com/ from a university teacher saying something to the effect of:&lt;BR/&gt;&lt;BR/&gt;"We chose Groovy as the first language to teach our students which worked very well. We found though that they were reluctant to move on to learning Java afterwards."&lt;BR/&gt;&lt;BR/&gt;:D</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3376508392331888241/966563545200475337/comments/default/1154722536094680711'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3376508392331888241/966563545200475337/comments/default/1154722536094680711'/><link rel='alternate' type='text/html' href='http://curious-attempt-bunny.blogspot.com/2008/07/on-returning-to-java.html?showComment=1216091624955#c1154722536094680711' title=''/><author><name>Curious Attempt Bunny</name><uri>http://www.blogger.com/profile/04654980649772473807</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11885571763902067958'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://curious-attempt-bunny.blogspot.com/2008/07/on-returning-to-java.html' ref='tag:blogger.com,1999:blog-3376508392331888241.post-966563545200475337' source='http://www.blogger.com/feeds/3376508392331888241/posts/default/966563545200475337' type='text/html'/></entry><entry><id>tag:blogger.com,1999:blog-3376508392331888241.post-1388096226056829881</id><published>2008-07-14T19:16:47.012-07:00</published><updated>2008-07-14T19:16:47.012-07:00</updated><title type='text'>I haven't had a chance to check out anything more ...</title><content type='html'>I haven't had a chance to check out anything more than the basics on groovy so far. I'm strongly considering teaching Groovy instead of Java in the future. I doubt I have time to put together the necessary lessons in time for the upcoming year, but once this school year gets started, I expect to start checking out groovy for real as a candidate for classes in 2009-2010 and taking a stab at putting together a lesson plan. This summer's time is largely spoken for already.&lt;BR/&gt;&lt;BR/&gt;-Mark&lt;BR/&gt;&lt;A HREF="http://catsonkeyboards.blogspot.com" REL="nofollow"&gt;An Infinite Number of Cats on Keyboards&lt;/A&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3376508392331888241/966563545200475337/comments/default/1388096226056829881'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3376508392331888241/966563545200475337/comments/default/1388096226056829881'/><link rel='alternate' type='text/html' href='http://curious-attempt-bunny.blogspot.com/2008/07/on-returning-to-java.html?showComment=1216088207012#c1388096226056829881' title=''/><author><name>Mark A. Graybill</name><uri>http://www.blogger.com/profile/05472603072142005189</uri><email>noreply@blogger.com</email></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://curious-attempt-bunny.blogspot.com/2008/07/on-returning-to-java.html' ref='tag:blogger.com,1999:blog-3376508392331888241.post-966563545200475337' source='http://www.blogger.com/feeds/3376508392331888241/posts/default/966563545200475337' type='text/html'/></entry><entry><id>tag:blogger.com,1999:blog-3376508392331888241.post-7723046341001376906</id><published>2008-07-14T01:13:43.374-07:00</published><updated>2008-07-14T01:13:43.374-07:00</updated><title type='text'>Typo: run-time casting is _dynamic_ typing.</title><content type='html'>Typo: run-time casting is _dynamic_ typing.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3376508392331888241/966563545200475337/comments/default/7723046341001376906'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3376508392331888241/966563545200475337/comments/default/7723046341001376906'/><link rel='alternate' type='text/html' href='http://curious-attempt-bunny.blogspot.com/2008/07/on-returning-to-java.html?showComment=1216023223374#c7723046341001376906' title=''/><author><name>Greg</name><uri>http://www.blogger.com/profile/07637024036051297719</uri><email>noreply@blogger.com</email></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://curious-attempt-bunny.blogspot.com/2008/07/on-returning-to-java.html' ref='tag:blogger.com,1999:blog-3376508392331888241.post-966563545200475337' source='http://www.blogger.com/feeds/3376508392331888241/posts/default/966563545200475337' type='text/html'/></entry><entry><id>tag:blogger.com,1999:blog-3376508392331888241.post-7340967939509913375</id><published>2008-07-13T23:36:44.614-07:00</published><updated>2008-07-13T23:36:44.614-07:00</updated><title type='text'>Hey Mark,My runtime casting was a coding bug pure ...</title><content type='html'>Hey Mark,&lt;BR/&gt;&lt;BR/&gt;My runtime casting was a coding bug pure and simple. It's just interesting to note that I needed a test to catch the mistake, as I would have in Groovy also. &lt;BR/&gt;&lt;BR/&gt;This was my long way around to pointing out the obvious fact that the Java doesn't catch every typing issue at compile time.&lt;BR/&gt;&lt;BR/&gt;I notice from your blog that you teach Java. Have you seen the Groovy SwingBuilder?&lt;BR/&gt;&lt;BR/&gt;Cheers Mark,&lt;BR/&gt;Merlyn</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3376508392331888241/966563545200475337/comments/default/7340967939509913375'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3376508392331888241/966563545200475337/comments/default/7340967939509913375'/><link rel='alternate' type='text/html' href='http://curious-attempt-bunny.blogspot.com/2008/07/on-returning-to-java.html?showComment=1216017404614#c7340967939509913375' title=''/><author><name>Curious Attempt Bunny</name><uri>http://www.blogger.com/profile/04654980649772473807</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11885571763902067958'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://curious-attempt-bunny.blogspot.com/2008/07/on-returning-to-java.html' ref='tag:blogger.com,1999:blog-3376508392331888241.post-966563545200475337' source='http://www.blogger.com/feeds/3376508392331888241/posts/default/966563545200475337' type='text/html'/></entry><entry><id>tag:blogger.com,1999:blog-3376508392331888241.post-6159044398714110727</id><published>2008-07-13T22:34:27.404-07:00</published><updated>2008-07-13T22:34:27.404-07:00</updated><title type='text'>I hear you on the autoboxing. I'm curious to know ...</title><content type='html'>I hear you on the autoboxing. I'm curious to know more about your runtime casting problems.&lt;BR/&gt;&lt;BR/&gt;I don't find any readability problems with the declarations and initializations myself. With the differing mindsets toward variables in Groovy and Java I think each syntax suits each language. With Java it's a two step process, and the syntax supports this. *shrug*&lt;BR/&gt;&lt;BR/&gt;Groovy is very clean-looking compared to Java, I'll agree.&lt;BR/&gt;&lt;BR/&gt;Good write-up, it's interesting to hear about the experience of moving back and forth.&lt;BR/&gt;&lt;BR/&gt;-Mark G.&lt;BR/&gt;&lt;A HREF="http://catsonkeyboards.blogspot.com/" REL="nofollow"&gt;An Infinite Number of Cats on Keyboards&lt;/A&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3376508392331888241/966563545200475337/comments/default/6159044398714110727'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3376508392331888241/966563545200475337/comments/default/6159044398714110727'/><link rel='alternate' type='text/html' href='http://curious-attempt-bunny.blogspot.com/2008/07/on-returning-to-java.html?showComment=1216013667404#c6159044398714110727' title=''/><author><name>Mark A. Graybill</name><uri>http://www.blogger.com/profile/05472603072142005189</uri><email>noreply@blogger.com</email></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://curious-attempt-bunny.blogspot.com/2008/07/on-returning-to-java.html' ref='tag:blogger.com,1999:blog-3376508392331888241.post-966563545200475337' source='http://www.blogger.com/feeds/3376508392331888241/posts/default/966563545200475337' type='text/html'/></entry></feed>