<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress/2.3.3" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>
<channel>
	<title>Comments on: Heavyweight Bout: Jobs vs Java</title>
	<link>http://www.dancres.org/blitzblog/2007/01/21/heavyweight-bout-jobs-vs-java/</link>
	<description></description>
	<pubDate>Sat, 05 Jul 2008 08:27:34 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.3.3</generator>
		<item>
		<title>By: The Cave &#187; Blog Archive &#187; Java: Go Back To Your Roots</title>
		<link>http://www.dancres.org/blitzblog/2007/01/21/heavyweight-bout-jobs-vs-java/#comment-293</link>
		<dc:creator>The Cave &#187; Blog Archive &#187; Java: Go Back To Your Roots</dc:creator>
		<pubDate>Sun, 18 Feb 2007 12:54:28 +0000</pubDate>
		<guid>http://www.dancres.org/blitzblog/2007/01/21/heavyweight-bout-jobs-vs-java/#comment-293</guid>
		<description>[...] Hmm: And that is the fact that Java is designed to be dynamically extensible not monolithic and static as is the prevailing pattern pursued by Sun&#8217;s JDK development team and the world of J2EE. Remember, Java in it&#8217;s early days was all about code-downloading and dynamic extension. Yet, all of those leading the Java masses seem to insist on ignoring this fact and continuing to build structures that are perhaps even less dynamic than C++ with shared libraries? [...]</description>
		<content:encoded><![CDATA[<p>[&#8230;] Hmm: And that is the fact that Java is designed to be dynamically extensible not monolithic and static as is the prevailing pattern pursued by Sun&rsquo;s JDK development team and the world of J2EE. Remember, Java in it&rsquo;s early days was all about code-downloading and dynamic extension. Yet, all of those leading the Java masses seem to insist on ignoring this fact and continuing to build structures that are perhaps even less dynamic than C++ with shared libraries? [&#8230;]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Pragmatic Dictator &#187; Blog Archive &#187; Ignoring Java&#8217;s Roots Again</title>
		<link>http://www.dancres.org/blitzblog/2007/01/21/heavyweight-bout-jobs-vs-java/#comment-244</link>
		<dc:creator>Pragmatic Dictator &#187; Blog Archive &#187; Ignoring Java&#8217;s Roots Again</dc:creator>
		<pubDate>Wed, 07 Feb 2007 15:22:25 +0000</pubDate>
		<guid>http://www.dancres.org/blitzblog/2007/01/21/heavyweight-bout-jobs-vs-java/#comment-244</guid>
		<description>[...] Once again, Java was built for this not monolithic, static applications, why is it so hard? Because we&#8217;ve not done anything to sort out issues with classloaders and remote code-loading or delivery of classes in .jars in a long, long time. [...]</description>
		<content:encoded><![CDATA[<p>[&#8230;] Once again, Java was built for this not monolithic, static applications, why is it so hard? Because we&#8217;ve not done anything to sort out issues with classloaders and remote code-loading or delivery of classes in .jars in a long, long time. [&#8230;]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Chris Custine</title>
		<link>http://www.dancres.org/blitzblog/2007/01/21/heavyweight-bout-jobs-vs-java/#comment-204</link>
		<dc:creator>Chris Custine</dc:creator>
		<pubDate>Sun, 21 Jan 2007 20:00:40 +0000</pubDate>
		<guid>http://www.dancres.org/blitzblog/2007/01/21/heavyweight-bout-jobs-vs-java/#comment-204</guid>
		<description>I think that OSGi could actually address the JVM as well as application code.  Obviously all of it would mean some major changes to the core JVM spec, but that is inevitable if anyone wants to really address classloader deficiencies.  I just blogged about re-working the core JVM to be OSGi based here:
http://blog.organicelement.com/2007/01/21/osgi-perfect-for-java-on-the-iphone-steve/
but I didn't get into great detail.  As far as something like CPAN...  OSGi has a draft spec for a bundle repository that would allow you to list bundles from a remote repository and select them for download and installation (all at runtime of course) or possibly auto-install bundles (like optional JVM components) upon installation of application code with unsatisfied dependencies.  I am not sure about Equinox and Knopflerfish, but the Apache Felix project has an implementation here: http://cwiki.apache.org/FELIX/osgi-bundle-repository-obr.html

I think to some extent that the future of Java almost requires something like this.</description>
		<content:encoded><![CDATA[<p>I think that OSGi could actually address the JVM as well as application code.  Obviously all of it would mean some major changes to the core JVM spec, but that is inevitable if anyone wants to really address classloader deficiencies.  I just blogged about re-working the core JVM to be OSGi based here:<br />
<a href="http://blog.organicelement.com/2007/01/21/osgi-perfect-for-java-on-the-iphone-steve/" rel="nofollow">http://blog.organicelement.com/2007/01/21/osgi-perfect-for-java-on-the-iphone-steve/</a><br />
but I didn&#8217;t get into great detail.  As far as something like CPAN&#8230;  OSGi has a draft spec for a bundle repository that would allow you to list bundles from a remote repository and select them for download and installation (all at runtime of course) or possibly auto-install bundles (like optional JVM components) upon installation of application code with unsatisfied dependencies.  I am not sure about Equinox and Knopflerfish, but the Apache Felix project has an implementation here: <a href="http://cwiki.apache.org/FELIX/osgi-bundle-repository-obr.html" rel="nofollow">http://cwiki.apache.org/FELIX/osgi-bundle-repository-obr.html</a></p>
<p>I think to some extent that the future of Java almost requires something like this.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dan Creswell</title>
		<link>http://www.dancres.org/blitzblog/2007/01/21/heavyweight-bout-jobs-vs-java/#comment-203</link>
		<dc:creator>Dan Creswell</dc:creator>
		<pubDate>Sun, 21 Jan 2007 18:38:05 +0000</pubDate>
		<guid>http://www.dancres.org/blitzblog/2007/01/21/heavyweight-bout-jobs-vs-java/#comment-203</guid>
		<description>Hi Alex,

Agreed - something like Perl's CPAN maybe?  What you talk about is exactly the sort of thing I had in mind when I wrote the posting.  I have a suspicion that to do it right might mean doing the module thing and addressing the classloader problems but I'd admit to not having thought that through in detail.</description>
		<content:encoded><![CDATA[<p>Hi Alex,</p>
<p>Agreed - something like Perl&#8217;s CPAN maybe?  What you talk about is exactly the sort of thing I had in mind when I wrote the posting.  I have a suspicion that to do it right might mean doing the module thing and addressing the classloader problems but I&#8217;d admit to not having thought that through in detail.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alex Blewitt</title>
		<link>http://www.dancres.org/blitzblog/2007/01/21/heavyweight-bout-jobs-vs-java/#comment-202</link>
		<dc:creator>Alex Blewitt</dc:creator>
		<pubDate>Sun, 21 Jan 2007 18:25:23 +0000</pubDate>
		<guid>http://www.dancres.org/blitzblog/2007/01/21/heavyweight-bout-jobs-vs-java/#comment-202</guid>
		<description>The problem isn't going to be solved with either JSR or the OSGi (though clearly one is superior and the other is NIH) but the big problem is that the J2SE install (or whatever it's called these days) has been bloatware since about Java 1.3. What's really needed is to split the JVM core from the rest of the packages -- much like the Harmony VM from harmony.apache.org -- into different bundles which can then have dependencies on each other, and not mandate that it's an all-or-nothing thing. That way, the VM can evolve at a different speed than the core libraries can, and if the VM can load any class library, this kind of thing becomes irrelevant, because an application can ship the libraries that it both needs and has been tested with.</description>
		<content:encoded><![CDATA[<p>The problem isn&#8217;t going to be solved with either JSR or the OSGi (though clearly one is superior and the other is NIH) but the big problem is that the J2SE install (or whatever it&#8217;s called these days) has been bloatware since about Java 1.3. What&#8217;s really needed is to split the JVM core from the rest of the packages &#8212; much like the Harmony VM from harmony.apache.org &#8212; into different bundles which can then have dependencies on each other, and not mandate that it&#8217;s an all-or-nothing thing. That way, the VM can evolve at a different speed than the core libraries can, and if the VM can load any class library, this kind of thing becomes irrelevant, because an application can ship the libraries that it both needs and has been tested with.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dan Creswell</title>
		<link>http://www.dancres.org/blitzblog/2007/01/21/heavyweight-bout-jobs-vs-java/#comment-201</link>
		<dc:creator>Dan Creswell</dc:creator>
		<pubDate>Sun, 21 Jan 2007 17:57:05 +0000</pubDate>
		<guid>http://www.dancres.org/blitzblog/2007/01/21/heavyweight-bout-jobs-vs-java/#comment-201</guid>
		<description>Hi Curt,

I think the modularity JSRs will help a little (though I fear we may get a homebrew solution rather than OSGi) but it doesn't address the other half of the problem which is the need to revise the classloader model some and start producing tools, frameworks, platforms etc that exploit dynamic class loading more thoroughly.

If you're particularly interested, I'd suggest you read the paper I mention in the posting and pay particular attention to sections 2.3 and 4.0 which discuss how classloaders are currently serving too many purposes and the problems it can cause.</description>
		<content:encoded><![CDATA[<p>Hi Curt,</p>
<p>I think the modularity JSRs will help a little (though I fear we may get a homebrew solution rather than OSGi) but it doesn&#8217;t address the other half of the problem which is the need to revise the classloader model some and start producing tools, frameworks, platforms etc that exploit dynamic class loading more thoroughly.</p>
<p>If you&#8217;re particularly interested, I&#8217;d suggest you read the paper I mention in the posting and pay particular attention to sections 2.3 and 4.0 which discuss how classloaders are currently serving too many purposes and the problems it can cause.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Curt Cox</title>
		<link>http://www.dancres.org/blitzblog/2007/01/21/heavyweight-bout-jobs-vs-java/#comment-200</link>
		<dc:creator>Curt Cox</dc:creator>
		<pubDate>Sun, 21 Jan 2007 17:53:43 +0000</pubDate>
		<guid>http://www.dancres.org/blitzblog/2007/01/21/heavyweight-bout-jobs-vs-java/#comment-200</guid>
		<description>Isn't this what all of the new modularity JSRs are supposed to address?</description>
		<content:encoded><![CDATA[<p>Isn&#8217;t this what all of the new modularity JSRs are supposed to address?</p>
]]></content:encoded>
	</item>
</channel>
</rss>
