<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>A Concurrent Affair</title>
	<atom:link href="http://www.concurrentaffair.org/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.concurrentaffair.org</link>
	<description>a blog about Mathias&#039; work and play.</description>
	<lastBuildDate>Fri, 20 Jan 2012 23:04:52 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>Fun in the Snow, Work from Home</title>
		<link>http://www.concurrentaffair.org/2012/01/20/fun-in-the-snow-work-from-home/</link>
		<comments>http://www.concurrentaffair.org/2012/01/20/fun-in-the-snow-work-from-home/#comments</comments>
		<pubDate>Fri, 20 Jan 2012 23:01:20 +0000</pubDate>
		<dc:creator>Mathias</dc:creator>
				<category><![CDATA[Pictures]]></category>

		<guid isPermaLink="false">http://www.concurrentaffair.org/?p=2785</guid>
		<description><![CDATA[Today is the third snow day in a row. I&#8217;m glad that my job offers me the flexibility to work from home, because the last two days, it was dangerous out there, and now it is just nasty. I can&#8217;t &#8230; <a href="http://www.concurrentaffair.org/2012/01/20/fun-in-the-snow-work-from-home/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Today is the third snow day in a row. I&#8217;m glad that my job offers me the flexibility to work from home, because the last two days, it was dangerous out there, and now it is just nasty. I can&#8217;t wait to go back to the office, though. Even though my productivity has been descent (better than I expected &#8212; maybe it&#8217;s the lack of meetings), working from home does get a bit lonely.</p>

<div id="attachment_2787" class="wp-caption aligncenter" style="width: 650px"><a href="http://www.concurrentaffair.org/wp-content/uploads/2012/01/499299082.jpg"><img src="http://www.concurrentaffair.org/wp-content/uploads/2012/01/499299082-1024x577.jpg" alt="Sliding in the snow, January 18, 2012" title="Sliding in the snow, January 18, 2012" width="640" height="360" class="size-large wp-image-2787" /></a><p class="wp-caption-text">Sliding in the snow, January 18, 2012</p></div>

<p>It&#8217;s been a long time since I&#8217;ve seen this much snow. Definitely an experience.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.concurrentaffair.org/2012/01/20/fun-in-the-snow-work-from-home/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Seattle, a Winter Wonderland</title>
		<link>http://www.concurrentaffair.org/2012/01/15/seattle-a-winter-wonderland/</link>
		<comments>http://www.concurrentaffair.org/2012/01/15/seattle-a-winter-wonderland/#comments</comments>
		<pubDate>Mon, 16 Jan 2012 02:40:09 +0000</pubDate>
		<dc:creator>Mathias</dc:creator>
				<category><![CDATA[Pictures]]></category>
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.concurrentaffair.org/?p=2756</guid>
		<description><![CDATA[Before I moved to Seattle, people told me it &#8220;never snows in Seattle.&#8221; In the first few months of 2011, I had already found that to be incorrect. But today, more snow fell than I&#8217;ve seen here before. It&#8217;s really &#8230; <a href="http://www.concurrentaffair.org/2012/01/15/seattle-a-winter-wonderland/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Before I moved to Seattle, people told me it &#8220;never snows in Seattle.&#8221; In the first few months of 2011, I had already found that to be incorrect. But today, more snow fell than I&#8217;ve seen here before. It&#8217;s really quite pretty, but it&#8217;s also Sunday, and I don&#8217;t have to go anywhere.</p>


<a href='http://www.concurrentaffair.org/2012/01/15/seattle-a-winter-wonderland/img_0585_resize/' title='Seattle snow, 2012-01-15, from my apartment. Where&#039;s the city?'><img src="http://www.concurrentaffair.org/wp-content/uploads/2012/01/IMG_0585_resize.jpg" class="attachment-thumbnail" alt="Seattle snow, 2012-01-15, from my apartment. Where&#039;s the city?" title="Seattle snow, 2012-01-15, from my apartment. Where&#039;s the city?" /></a>
<a href='http://www.concurrentaffair.org/2012/01/15/seattle-a-winter-wonderland/img_0592_resize/' title='Seattle snow, 2012-01-15, from my apartment. Facing northeast.'><img src="http://www.concurrentaffair.org/wp-content/uploads/2012/01/IMG_0592_resize.jpg" class="attachment-thumbnail" alt="Seattle snow, 2012-01-15, from my apartment. Facing northeast." title="Seattle snow, 2012-01-15, from my apartment. Facing northeast." /></a>
<a href='http://www.concurrentaffair.org/2012/01/15/seattle-a-winter-wonderland/imag1744_resize/' title='Seattle snow, 2012-01-15, outside my apartment.'><img src="http://www.concurrentaffair.org/wp-content/uploads/2012/01/IMAG1744_resize.jpg" class="attachment-thumbnail" alt="Seattle snow, 2012-01-15, outside my apartment." title="Seattle snow, 2012-01-15, outside my apartment." /></a>
<a href='http://www.concurrentaffair.org/2012/01/15/seattle-a-winter-wonderland/imag1748_resize/' title='Seattle snow, 2012-01-15, kids sledding.'><img src="http://www.concurrentaffair.org/wp-content/uploads/2012/01/IMAG1748_resize.jpg" class="attachment-thumbnail" alt="Seattle snow, 2012-01-15, kids sledding." title="Seattle snow, 2012-01-15, kids sledding." /></a>
<a href='http://www.concurrentaffair.org/2012/01/15/seattle-a-winter-wonderland/imag1747_resize/' title='Seattle snow, 2012-01-15, everything is white.'><img src="http://www.concurrentaffair.org/wp-content/uploads/2012/01/IMAG1747_resize.jpg" class="attachment-thumbnail" alt="Seattle snow, 2012-01-15, everything is white." title="Seattle snow, 2012-01-15, everything is white." /></a>
<a href='http://www.concurrentaffair.org/2012/01/15/seattle-a-winter-wonderland/imag1750_resize/' title='Seattle snow, 2012-01-15, snowman on a bench.'><img src="http://www.concurrentaffair.org/wp-content/uploads/2012/01/IMAG1750_resize.jpg" class="attachment-thumbnail" alt="Seattle snow, 2012-01-15, snowman on a bench." title="Seattle snow, 2012-01-15, snowman on a bench." /></a>


<p>We&#8217;ll see how I feel about the snow tomorrow. Fortunately, my manager is great and has already said we could all work from home if necessary. I do have a meeting, though, that I don&#8217;t want to miss.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.concurrentaffair.org/2012/01/15/seattle-a-winter-wonderland/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>People Who Crash into Cars I&#8217;m in Continue to Suck</title>
		<link>http://www.concurrentaffair.org/2012/01/13/people-who-crash-into-cars-im-in-continue-to-suck/</link>
		<comments>http://www.concurrentaffair.org/2012/01/13/people-who-crash-into-cars-im-in-continue-to-suck/#comments</comments>
		<pubDate>Sat, 14 Jan 2012 01:19:45 +0000</pubDate>
		<dc:creator>Mathias</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.concurrentaffair.org/?p=2754</guid>
		<description><![CDATA[The accident last week was the second time that I was involved in a car accident (it happened more often if you count cars hitting me on a bike). The first time, a Houston rapper rear-ended my friend&#8217;s car, with &#8230; <a href="http://www.concurrentaffair.org/2012/01/13/people-who-crash-into-cars-im-in-continue-to-suck/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>The accident last week was the second time that I was involved in a car accident (it happened more often if you count cars hitting me on a bike).</p>

<p>The first time, a Houston rapper rear-ended my friend&#8217;s car, with my friend and me in it, and totaled it. He had an insurance card that he handed over, but what we didn&#8217;t know was that he had canceled the policy. He had had enough money to buy his new car in cash, but then he was too stingy to have the legally-required insurance.</p>

<p>You suck, man.</p>

<p>The accident last week wasn&#8217;t nearly as bad. Some people might not even care. There is some bent metal on the fender and a bunch of long scratches. The woman gave me her insurance card and her phone number. I talked to her insurance last week, but they didn&#8217;t get anywhere, because the phone number they had wasn&#8217;t working. I tried calling her, and it was the same number. She had given me a phone number that didn&#8217;t work.</p>

<p>That sucks too.</p>

<p>I tracked her down on Google and called her at work. I&#8217;m glad she honored my request to call her insurance as soon as possible. She acknowledged she was at fault, and now I can go get an estimate. She stunned me a little, though, when she grumpily said &#8220;I&#8217;m disappointed you got the insurance involved. I wish you had just gotten an estimate, and I would have paid for the repairs.&#8221; Tough luck, missy.</p>

<p>A co-worker of mine had the perfect response. He asked, &#8220;Did you say &#8216;I&#8217;m disappointed you hit my car&#8217;?&#8221; I wish I had.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.concurrentaffair.org/2012/01/13/people-who-crash-into-cars-im-in-continue-to-suck/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A Grammar Change Saves the Day</title>
		<link>http://www.concurrentaffair.org/2012/01/06/a-grammar-change-saves-the-day/</link>
		<comments>http://www.concurrentaffair.org/2012/01/06/a-grammar-change-saves-the-day/#comments</comments>
		<pubDate>Fri, 06 Jan 2012 16:47:14 +0000</pubDate>
		<dc:creator>Mathias</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.concurrentaffair.org/?p=2751</guid>
		<description><![CDATA[At work, we deployed the latest version of our code on Wednesday night. It included a new query language. We used ANTLR to do the parsing. We had never tested the new queries in a production setting, but the deployments &#8230; <a href="http://www.concurrentaffair.org/2012/01/06/a-grammar-change-saves-the-day/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>At work, we deployed the latest version of our code on Wednesday night. It included a new query language. We used <a href="http://www.antlr.org/">ANTLR</a> to do the parsing.</p>

<p>We had never tested the new queries in a production setting, but the deployments to our Alpha, Gamma, and two regional clusters worked without problems. A few hours after deploying to the last clusters, a customer started using it, and that&#8217;s when all hell broke lose. I ended up rolling back to the previous version at 4 AM on Thursday.</p>

<p>A quick analysis by my coworkers yesterday showed that most of the time was spent doing the parsing.</p>

<p>The grammar that we used was essentially this one, which required backtracking by ANTLR:</p>

<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">E ::= ( E )<br />
&nbsp; &nbsp; | C<br />
C ::= ( E and E )<br />
&nbsp; &nbsp; | ( E or E )</div></td></tr></tbody></table></div>

<p>We never even let our test query finish, but it had been running for 45 minutes non-stop. I suggested a small change, which amounted to something like this:</p>

<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">E ::= ( E R<br />
R ::= )<br />
&nbsp; &nbsp; | and E )<br />
&nbsp; &nbsp; | or E )</div></td></tr></tbody></table></div>

<p>Sometimes it <em>is</em> helpful that I spent grad school in the <a href="http://compsci.rice.edu/research.cfm?doc_id=4356">programming languages group</a>.</p>

<p>The parser that ANTLR generated now parsed our test query in under a second. Sure, we changed an <em>LL(*)</em> parser into an <em>LL(1)</em> parser, but I never would have thought that changing the grammar could result in an improvement by a factor of 2700.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.concurrentaffair.org/2012/01/06/a-grammar-change-saves-the-day/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Happy New Year (?)</title>
		<link>http://www.concurrentaffair.org/2012/01/06/happy-new-year-3/</link>
		<comments>http://www.concurrentaffair.org/2012/01/06/happy-new-year-3/#comments</comments>
		<pubDate>Fri, 06 Jan 2012 16:33:05 +0000</pubDate>
		<dc:creator>Mathias</dc:creator>
				<category><![CDATA[Ramblings]]></category>

		<guid isPermaLink="false">http://www.concurrentaffair.org/?p=2749</guid>
		<description><![CDATA[Happy new year! I haven&#8217;t written in a while, but I&#8217;ve also been busy. You know the story. I&#8217;ve done some traveling in private matters, but mostly it was large scale designs and some important improvements for work. I took &#8230; <a href="http://www.concurrentaffair.org/2012/01/06/happy-new-year-3/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Happy new year!</p>

<p>I haven&#8217;t written in a while, but I&#8217;ve also been busy. You know the story. I&#8217;ve done some traveling in private matters, but mostly it was large scale designs and some important improvements for work. I took every Monday off in December, and I still think that was a genial idea. Now it&#8217;s back to work without time off. It&#8217;s a marathon of <a href="http://scrummethodology.com/scrum-sprint/">sprints</a>.</p>

<p>This year has not started so well for me, though. The girl I had been dating says she &#8220;needs some time.&#8221; I don&#8217;t know what that means. I don&#8217;t know if I am single or still in a relationship. Not that that really matters, I don&#8217;t have the nerve to meet anyone new right now anyway. I&#8217;ll just bury myself in work as a distraction.</p>

<p>On January 4, a woman drove her car into mine when she tried to squeeze into the left turn lane as I was stopped at a red light. So unnecessary. The damage isn&#8217;t bad, but it&#8217;s annoying. My car wasn&#8217;t even a year old. And now I have to deal with insurance and repairs. The hours wasted are what annoy me the most.</p>

<p>And yesterday I missed my bus because I ripped my shoelace when I put on my left boot. Argh.</p>

<p>Makes me kind of worry about Friday, January 13.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.concurrentaffair.org/2012/01/06/happy-new-year-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Where Citations Come From &#8212; xkcd: Citogenesis</title>
		<link>http://www.concurrentaffair.org/2011/11/16/where-citations-come-from-xkcd-citogenesis/</link>
		<comments>http://www.concurrentaffair.org/2011/11/16/where-citations-come-from-xkcd-citogenesis/#comments</comments>
		<pubDate>Wed, 16 Nov 2011 16:34:36 +0000</pubDate>
		<dc:creator>Mathias</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.concurrentaffair.org/?p=2740</guid>
		<description><![CDATA[via xkcd: Citogenesis. Something similar actually happened with the Karl-Theodor zu Guttenberg, who used to be the German Minister for Economics and Technology and later the Minister of Defense, before it became clear that he had plagiarized his doctoral dissertation.]]></description>
			<content:encoded><![CDATA[<p><a href="http://xkcd.com/978/"><img src='http://www.concurrentaffair.org/wp-content/uploads/2011/11/citogenesis.png' alt='' /></a></p>

<p>via <a href='http://xkcd.com/978/'>xkcd: Citogenesis</a>.</p>

<p>Something similar actually happened with the <a href="http://www.bildblog.de/5704/wie-ich-freiherr-von-guttenberg-zu-wilhelm-machte/">Karl-Theodor zu Guttenberg</a>, who used to be the German Minister for Economics and Technology and later the Minister of Defense, before it became clear that he had plagiarized his doctoral dissertation.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.concurrentaffair.org/2011/11/16/where-citations-come-from-xkcd-citogenesis/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DrJava DefinitionsPaneMemoryLeakTest fails on Mac</title>
		<link>http://www.concurrentaffair.org/2011/11/14/drjava-definitionspanememoryleaktest-fails-on-mac/</link>
		<comments>http://www.concurrentaffair.org/2011/11/14/drjava-definitionspanememoryleaktest-fails-on-mac/#comments</comments>
		<pubDate>Mon, 14 Nov 2011 06:28:38 +0000</pubDate>
		<dc:creator>Mathias</dc:creator>
				<category><![CDATA[DrJava]]></category>

		<guid isPermaLink="false">http://www.concurrentaffair.org/?p=2735</guid>
		<description><![CDATA[I submitted a bugfix for a problem with the debug panel when no debugger is available. I noticed that on the Mac, the DefinitionsPaneMemoryLeakTest now fails: 1234567891011121314151617181920212223242526&#160; &#160;[junit] DefinitionsPaneMemoryLeakTest &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160;26.92 sec &#160; &#160;[junit] &#8230; <a href="http://www.concurrentaffair.org/2011/11/14/drjava-definitionspanememoryleaktest-fails-on-mac/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I submitted a <a href="https://sourceforge.net/tracker/?func=detail&#038;aid=3436749&#038;group_id=44253&#038;atid=438935">bugfix for a problem with the debug panel when no
debugger is available</a>.</p>

<p>I noticed that on the Mac, the DefinitionsPaneMemoryLeakTest now
fails:</p>

<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; &nbsp;[junit] DefinitionsPaneMemoryLeakTest &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;26.92 sec<br />
&nbsp; &nbsp;[junit] Testsuite: edu.rice.cs.drjava.ui.DefinitionsPaneMemoryLeakTest<br />
&nbsp; &nbsp;[junit] Tests run: 1, Failures: 1, Errors: 0<br />
&nbsp; &nbsp;[junit] ------------- Standard Error -----------------<br />
&nbsp; &nbsp;[junit] Skipped analysing class java.security.ProtectionDomain<br />
because of java.lang.AssertionError<br />
&nbsp; &nbsp;[junit] ------------- ---------------- ---------------<br />
&nbsp; &nbsp;[junit] Testcase:<br />
testDocumentPaneMemoryLeak(edu.rice.cs.drjava.ui.DefinitionsPaneMemoryLeakTest): &nbsp; &nbsp; &nbsp; &nbsp;FAILED<br />
&nbsp; &nbsp;[junit] Document 0 leaked:<br />
&nbsp; &nbsp;[junit] private static sun.awt.AppContext<br />
sun.awt.AppContext.mainAppContext-&gt;<br />
&nbsp; &nbsp;[junit] sun.awt.AppContext@4998a455-table-&gt;<br />
&nbsp; &nbsp;[junit] java.util.HashMap@7f1bfcfc-table-&gt;<br />
<br />
...<br />
<br />
&nbsp; &nbsp;[junit] [Ljava.beans.PropertyChangeListener;@67b50846-[373]-&gt;<br />
&nbsp; &nbsp;[junit] javax.swing.JViewport$1@7ceade87-this$0-&gt;<br />
&nbsp; &nbsp;[junit] javax.swing.JViewport@48be3a5e-component-&gt;<br />
&nbsp; &nbsp;[junit] java.util.ArrayList@6b333f77-elementData-&gt;<br />
&nbsp; &nbsp;[junit] [Ljava.lang.Object;@559b52d3-[0]-&gt;<br />
&nbsp; &nbsp;[junit] edu.rice.cs.drjava.ui.DefinitionsPane@2a38d0a8-_doc-&gt;<br />
&nbsp; &nbsp;[junit] edu.rice.cs.drjava.model.DefaultGlobalModel$ConcreteOpenDefDoc@557e5cbd<br />
&nbsp; &nbsp;[junit] &nbsp; &nbsp; at<br />
org.netbeans.test.MemoryTestUtils.assertGC(MemoryTestUtils.java:137)</div></td></tr></tbody></table></div>

<p>It passes on Windows, and I haven&#8217;t tried it on Linux. I rolled
back as far as revision 5266, which was from June 3, 2010, and it was
still failing on the Mac. I have a feeling that something must have
changed in Mac OS (Lion) or the Java version I have running
(1.6.0_29). I know I&#8217;ve successfully run the unit tests many times
since then on the Mac, even on my MacBook Pro. I even think I have run
them successfully on Mac OS Lion.</p>

<p>It would be great if I could still run the unit tests on an older Mac, with an older Mac OS. I&#8217;ll dig into this, but it may take some time.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.concurrentaffair.org/2011/11/14/drjava-definitionspanememoryleaktest-fails-on-mac/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Awful King County Metro Changes Coming Up</title>
		<link>http://www.concurrentaffair.org/2011/10/27/awful-king-county-metro-changes-coming-up/</link>
		<comments>http://www.concurrentaffair.org/2011/10/27/awful-king-county-metro-changes-coming-up/#comments</comments>
		<pubDate>Thu, 27 Oct 2011 06:20:47 +0000</pubDate>
		<dc:creator>Mathias</dc:creator>
				<category><![CDATA[Ramblings]]></category>

		<guid isPermaLink="false">http://www.concurrentaffair.org/?p=2711</guid>
		<description><![CDATA[I just found out that King County Metro is planning to cut off service for Route 27 at 12th Avenue at non-peak times. This is awful. Route 27 is the only bus that takes me directly to my office. It &#8230; <a href="http://www.concurrentaffair.org/2011/10/27/awful-king-county-metro-changes-coming-up/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I just found out that <a href="http://metro.kingcounty.gov/have-a-say/get-in-the-know/projects/route-information.html">King County Metro</a> is <a href="http://seattletransitblog.com/2011/10/25/metro-goes-big-for-fall-2012-service-change/">planning to cut off service for Route 27 at 12th Avenue</a> at non-peak times. This is awful.</p>

<p>Route 27 is the only bus that takes me directly to my office. It already takes me 40 to 45 minutes with that bus; in fact, I can walk faster, which I do when the weather is nice. Coming back from work on the 27, or any bus for that matter, is already bad enough <em>with the current service</em> running outside of peak times. I would have hoped that service improves instead of being cut. I guess buses are really more intended for the homeless, who don&#8217;t care where the route ends, and not for people who aren&#8217;t going home from work at 6 PM yet, when peak time ends.</p>

<p>If these changes go into effect, I guess I&#8217;ll just drive every day. That means I&#8217;ll have to pay for parking, but I&#8217;m not going to change buses and spend two hours every day commuting in the company of the drunk, drugged, and unwashed when I can drive to work in under 15 minutes.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.concurrentaffair.org/2011/10/27/awful-king-county-metro-changes-coming-up/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Back from SPLASH 2011</title>
		<link>http://www.concurrentaffair.org/2011/10/25/back-from-splash-2011/</link>
		<comments>http://www.concurrentaffair.org/2011/10/25/back-from-splash-2011/#comments</comments>
		<pubDate>Wed, 26 Oct 2011 04:29:54 +0000</pubDate>
		<dc:creator>Mathias</dc:creator>
				<category><![CDATA[Pictures]]></category>
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.concurrentaffair.org/?p=2716</guid>
		<description><![CDATA[I returned from SPLASH 2011 in Portland tonight. I attended only the Educators&#8217; Symposium on Monday and the first day of the conference proper, but it was worth it. And how could it not be, given that it was so &#8230; <a href="http://www.concurrentaffair.org/2011/10/25/back-from-splash-2011/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I returned from <a href="http://splashcon.org/2011/">SPLASH 2011</a> in Portland tonight. I attended only the Educators&#8217; Symposium on Monday and the first day of the conference proper, but it was worth it. And how could it not be, given that it was so close, in Portland, even though the still-new-for-me title &#8220;SPLASH &mdash; Systems, Programming, Languages and Applications: Software for Humanity&#8221; has something very hippy-like.</p>

<p>I got to see Corky, Vivek and Vincent again, my doctoral advisor and two of my collaborators. I ran into a bunch of people I had met before, like Matthew Flatt, Eelco Visser, Michael Ernst, and Eugene Wallingford, but Igor Peshansky was one of the few people who seemed to recognize me as well. Thanks, and that&#8217;s just the way it goes for folks like me.</p>

<p>Vivek and Vincent did a great job with our <a href="http://splashcon.org/2011/program/demonstrations/173-drhj-the-cure-to-your-multicore-programming-woes">DrHJ demonstration</a>. Of the other presentations that I watched, I think <a href="http://www.eecs.berkeley.edu/Pubs/TechRpts/2011/EECS-2011-3.html">PREFAIL</a> impressed me the most. That was really good work. I liked the idea of the <a href="http://splashcon.org/2011/program/185">DSL to test languages</a> and wish I&#8217;d had something like that for my work on <a href="http://www.cs.rice.edu/%7Emgricken/research/mint/index.shtml">Mint</a>. And <a href="http://www.mobl-lang.org/">Zef Hemel&#8217;s mobl language demo</a> was just damn cool.</p>

<p>I&#8217;m glad that I got to go, and I wish I had had more time, time to stay and be involved. I have more interests and responsibilities now, but I enjoy keeping in touch.</p>

<p>Here are some pictures:</p>

<div class="wp-caption alignnone" style="width: 550px"><a href="http://www.concurrentaffair.org/wp-content/uploads/2011/10/IMAG1431.jpg"><img src="http://www.concurrentaffair.org/wp-content/uploads/2011/10/IMAG1431.jpg" alt="Portland from the top of the Hilton, where the Educators&#039; Symposium was held." title="IMAG1431" class="aligncenter size-full wp-image-2721" /></a><p class="wp-caption-text">Portland from the top of the Hilton, where the Educators&#039; Symposium was held.</p></div>

<div class="wp-caption alignnone" style="width: 550px"><a href="http://www.concurrentaffair.org/wp-content/uploads/2011/10/IMAG1433.jpg"><img src="http://www.concurrentaffair.org/wp-content/uploads/2011/10/IMAG1433.jpg" alt="Turing Award-winner Ivan Sutherland speaking." title="IMAG1433" class="aligncenter size-full wp-image-2722" /></a><p class="wp-caption-text">Turing Award-winner Ivan Sutherland speaking.</p></div>

<div class="wp-caption alignnone" style="width: 550px"><a href="http://splashcon.org/2011/program/269"><img src="http://www.concurrentaffair.org/wp-content/uploads/2011/10/IMAG1436.jpg" alt="PREFAIL Talk." title="IMAG1436" class="aligncenter size-full wp-image-2719" /></a><p class="wp-caption-text">PREFAIL talk by Pallavi Joshi, UC Berkeley.</p></div>

<div class="wp-caption alignnone" style="width: 550px"><a href="http://splashcon.org/2011/program/269"><img src="http://www.concurrentaffair.org/wp-content/uploads/2011/10/IMAG1437.jpg" alt="PREFAIL Talk, finishing slide." title="IMAG1437" class="aligncenter size-full wp-image-2720" /></a><p class="wp-caption-text">PREFAIL Talk, finishing slide.</p></div>

<div class="wp-caption alignnone" style="width: 550px"><a href="http://splashcon.org/2011/program/269"><img src="http://www.concurrentaffair.org/wp-content/uploads/2011/10/IMAG1434.jpg" alt="Integrated Language Definition Testing Talk." title="IMAG1434" class="aligncenter size-full wp-image-2717" /></a><p class="wp-caption-text">Integrated Language Definition Testing Talk by Lennart Kats, Delft University of Technology</p></div>

<div class="wp-caption alignnone" style="width: 550px"><a href="http://splashcon.org/2011/program/269"><img src="http://www.concurrentaffair.org/wp-content/uploads/2011/10/IMAG1435.jpg" alt="Integrated Language Definition Testing, example slide." title="IMAG1435" class="aligncenter size-full wp-image-2718" /></a><p class="wp-caption-text">Integrated Language Definition Testing, example slide.</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.concurrentaffair.org/2011/10/25/back-from-splash-2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>John McCarthy Died</title>
		<link>http://www.concurrentaffair.org/2011/10/24/john-mccarthy-died/</link>
		<comments>http://www.concurrentaffair.org/2011/10/24/john-mccarthy-died/#comments</comments>
		<pubDate>Tue, 25 Oct 2011 04:18:20 +0000</pubDate>
		<dc:creator>Mathias</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.concurrentaffair.org/?p=2706</guid>
		<description><![CDATA[John McCarthy, Turing Award winner and one of the luminaries of computer science, died yesterday. I&#8217;ve spent the evening after the SPLASH Educators&#8217; Symposium listening to McCarthy&#8217;s OOPSLA 2007 keynote speech (mp3). John McCarthy was one of the earliest collaborators &#8230; <a href="http://www.concurrentaffair.org/2011/10/24/john-mccarthy-died/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://techcrunch.com/2011/10/24/creator-of-lisp-john-mccarthy-dead-at-84/">John McCarthy</a>, Turing Award winner and one of the luminaries of computer science, died yesterday. I&#8217;ve spent the evening after the SPLASH Educators&#8217; Symposium listening to <a href="http://www.oopsla.org/podcasts/Keynote_JohnMcCarthy.mp3">McCarthy&#8217;s OOPSLA 2007 keynote speech (mp3)</a>.</p>

<div class="wp-caption alignnone" style="width: 550px"><a href="http://twitter.com/#!/splashcon/status/128583021367525376/photo/1/large"><img alt="Dick Gabriel introducing Stanford professor McCarthy&#039;s keynote at OOPSLA&#039;07 in Montreal" src="http://p.twimg.com/AcjRk6FCAAAYXLT.jpg" title="Dick Gabriel introducing Stanford professor McCarthy&#039;s keynote at OOPSLA&#039;07 in Montreal" width="540" height="720" /></a><p class="wp-caption-text">Dick Gabriel introducing Stanford professor McCarthy&#039;s keynote at OOPSLA&#039;07 in Montreal</p></div>

<p>John McCarthy was one of the earliest collaborators of my doctoral advisor, Robert &#8220;Corky&#8221; Cartwright. They worked on first-order programming logic in 1978 (<a href="http://www.springerlink.com/content/y816182407533217/"><em>Recursive programs as functions in a first order theory</em></a>) and 1979 (<a href="http://dl.acm.org/citation.cfm?doid=567752.567759"><em>First order programming logic</em></a>).</p>

<p>McCarthy was on Corky&#8217;s committee. In Germany, the doctoral advisor is called &#8220;Doktorvater&#8221;, doctor father. If I haven&#8217;t quite lost a doctoral grandfather, I have at least lost a doctoral granduncle.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.concurrentaffair.org/2011/10/24/john-mccarthy-died/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://www.oopsla.org/podcasts/Keynote_JohnMcCarthy.mp3" length="35804293" type="audio/mpeg" />
		</item>
		<item>
		<title>It&#8217;s Not Warm on Mt. Rainier</title>
		<link>http://www.concurrentaffair.org/2011/10/04/its-not-warm-on-mt-rainier/</link>
		<comments>http://www.concurrentaffair.org/2011/10/04/its-not-warm-on-mt-rainier/#comments</comments>
		<pubDate>Tue, 04 Oct 2011 15:00:30 +0000</pubDate>
		<dc:creator>Mathias</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.concurrentaffair.org/?p=2699</guid>
		<description><![CDATA[I wanted to check if I could squeeze another weekend of camping in this year, so I went to weather.com and typed in Mt. Rainier. It looked great: 23 Celsius on Saturday (73 Fahrenheit). That did seem a bit odd, &#8230; <a href="http://www.concurrentaffair.org/2011/10/04/its-not-warm-on-mt-rainier/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I wanted to check if I could squeeze another weekend of camping in this year, so I went to <a href="http://www.weather.com">weather.com</a> and typed in Mt. Rainier. It looked great: 23 Celsius on Saturday (73 Fahrenheit).</p>

<div id="attachment_2702" class="wp-caption aligncenter" style="width: 669px"><a href="http://www.weather.com/weather/tenday/Mount+Rainier+MD+USMD0278"><img src="http://www.concurrentaffair.org/wp-content/uploads/2011/10/screen-capture.png" alt="Mt. Rainier Weather" title="screen-capture" width="659" height="682" class="size-full wp-image-2702" /></a><p class="wp-caption-text">Mt. Rainier Weather</p></div>

<p>That did seem a bit odd, though, considering the temperature is hovering between 10 C (50 F) and 17 C (63 F) in Seattle. It turns out, that weather is for Mt. Rainier, <i>Maryland</i>, a suburb of Washington, DC. In Mt. Rainier National Park, WA, it&#8217;s snowing:</p>

<div id="attachment_2703" class="wp-caption aligncenter" style="width: 665px"><a href="http://www.weather.com/weather/tenday/USWA0287"><img src="http://www.concurrentaffair.org/wp-content/uploads/2011/10/screen-capture-1.png" alt="Mt. Rainier National Park Weather" title="screen-capture-1" width="655" height="680" class="size-full wp-image-2703" /></a><p class="wp-caption-text">Mt. Rainier National Park Weather</p></div>

<p>Oops.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.concurrentaffair.org/2011/10/04/its-not-warm-on-mt-rainier/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Better Number Highlighting in DrJava More Difficult</title>
		<link>http://www.concurrentaffair.org/2011/09/29/better-number-highlighting-in-drjava-more-difficult/</link>
		<comments>http://www.concurrentaffair.org/2011/09/29/better-number-highlighting-in-drjava-more-difficult/#comments</comments>
		<pubDate>Thu, 29 Sep 2011 06:58:00 +0000</pubDate>
		<dc:creator>Mathias</dc:creator>
				<category><![CDATA[DrJava]]></category>

		<guid isPermaLink="false">http://www.concurrentaffair.org/?p=2697</guid>
		<description><![CDATA[Getting the lexing right for the syntax highlighting will be a little bit more work than I thought. Right now, DrJava tokenizes numbers like 3.14 separately as &#8220;3&#8243; &#8220;.&#8221; &#8220;14&#8243;, and then it highlights &#8220;3&#8243; and &#8220;14&#8243; as numbers. That &#8230; <a href="http://www.concurrentaffair.org/2011/09/29/better-number-highlighting-in-drjava-more-difficult/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Getting the lexing right for the syntax highlighting will be a little
bit more work than I thought. Right now, DrJava tokenizes numbers like
3.14 separately as &#8220;3&#8243; &#8220;.&#8221; &#8220;14&#8243;, and then it highlights &#8220;3&#8243; and &#8220;14&#8243;
as numbers. That approach never was quite right, but I think it gets
even uglier with the new literals.</p>

<p>I&#8217;m continuing the process of giving the compiler adapters more
responsibility. The first step that I made for supporting HJ and Mint
was to put the list of keywords into the adapters. I was now going to
put the highlight determination into the adapters, but it seems like I
may have to put tokenization there as well.</p>

<p>Of course, that fits well with plans of eventually supporting more languages, and languages that differ more.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.concurrentaffair.org/2011/09/29/better-number-highlighting-in-drjava-more-difficult/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Additional Java 5 Syntax Highlighting Errors in DrJava</title>
		<link>http://www.concurrentaffair.org/2011/09/27/additional-java-5-syntax-highlighting-errors-in-drjava/</link>
		<comments>http://www.concurrentaffair.org/2011/09/27/additional-java-5-syntax-highlighting-errors-in-drjava/#comments</comments>
		<pubDate>Tue, 27 Sep 2011 16:15:42 +0000</pubDate>
		<dc:creator>Mathias</dc:creator>
				<category><![CDATA[DrJava]]></category>

		<guid isPermaLink="false">http://www.concurrentaffair.org/?p=2690</guid>
		<description><![CDATA[While adding syntax highlighting for underscores and binary literals introduced in Java 7 to DrJava, I discovered that a few other numbers aren&#8217;t syntax-highlighted correctly. Some of these problems go back to the beginning of Java, others go back to &#8230; <a href="http://www.concurrentaffair.org/2011/09/27/additional-java-5-syntax-highlighting-errors-in-drjava/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>While adding <a href="https://sourceforge.net/tracker/?func=detail&#038;aid=3404387&#038;group_id=44253&#038;atid=438935">syntax highlighting for underscores and binary literals introduced in Java 7</a> to <a href="http://drjava.org/">DrJava</a>, I discovered that a few other numbers aren&#8217;t syntax-highlighted correctly. Some of these problems go back to the beginning of Java, others go back to Java 5, when the obscure hexadecimal floating-point literal was introduced.</p>

<p>Here are the numbers that give DrJava&#8217;s syntax highlighter trouble:</p>

<div class="codecolorer-container java default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000066; font-weight: bold;">float</span> f <span style="color: #339933;">=</span> 6.022137e<span style="color: #339933;">+</span>23f<span style="color: #339933;">;</span><br />
f <span style="color: #339933;">=</span> <span style="color: #cc66cc;">2</span>.<span style="color: #006633;">f</span><span style="color: #339933;">;</span><br />
f <span style="color: #339933;">=</span> .3f<span style="color: #339933;">;</span><br />
<br />
<span style="color: #000066; font-weight: bold;">double</span> d <span style="color: #339933;">=</span> <span style="color: #cc66cc;">2</span>.<span style="color: #339933;">;</span><br />
d <span style="color: #339933;">=</span> .3<span style="color: #339933;">;</span><br />
d <span style="color: #339933;">=</span> 1e<span style="color: #339933;">-</span>9d<span style="color: #339933;">;</span><br />
<br />
<span style="color: #000066; font-weight: bold;">double</span> x <span style="color: #339933;">=</span> 0x1.8p1<span style="color: #339933;">;</span><br />
x <span style="color: #339933;">=</span> 0x1.<span style="color: #006633;">fffffffffffffp1023</span><span style="color: #339933;">;</span><br />
x <span style="color: #339933;">=</span> 0x1.0P<span style="color: #339933;">-</span><span style="color: #cc66cc;">1074</span><span style="color: #339933;">;</span><br />
x <span style="color: #339933;">=</span> 0x0.0000000000001P<span style="color: #339933;">-</span><span style="color: #cc66cc;">1022</span><span style="color: #339933;">;</span></div></td></tr></tbody></table></div>

<p>Did you know about these hexadecimal floating-point literals? I didn&#8217;t.</p>

<p>I created a <a href="https://sourceforge.net/tracker/?func=detail&#038;aid=3414514&#038;group_id=44253&#038;atid=438935">bug report for these Java 5 highlighting bugs</a>.</p>

<p>References:</p>

<ul>
    <li><a href="http://download.oracle.com/javase/7/docs/technotes/guides/language/underscores-literals.html">Underscores in Numeric Literals</a></li>
    <li><a href="http://download.oracle.com/javase/7/docs/technotes/guides/language/binary-literals.html">Binary Literals</a></li>
    <li><a href="http://blogs.oracle.com/darcy/entry/hexadecimal_floating_point_literals">Hexadecimal Floating Point Literals</a></li>
    <li><a href="http://java.sun.com/docs/books/jls/third_edition/html/lexical.html#48272">Java 5 Literals</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.concurrentaffair.org/2011/09/27/additional-java-5-syntax-highlighting-errors-in-drjava/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Lost My Phone</title>
		<link>http://www.concurrentaffair.org/2011/09/26/lost-my-phone/</link>
		<comments>http://www.concurrentaffair.org/2011/09/26/lost-my-phone/#comments</comments>
		<pubDate>Tue, 27 Sep 2011 04:03:39 +0000</pubDate>
		<dc:creator>Mathias</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.concurrentaffair.org/?p=2686</guid>
		<description><![CDATA[I lost my phone on the bus this morning. I stepped off the bus, went into a store, realized my phone wasn&#8217;t in my pocket, turned around and saw the bus drive away. Shoot. I immediately changed my Google password, &#8230; <a href="http://www.concurrentaffair.org/2011/09/26/lost-my-phone/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I lost my phone on the bus this morning. I stepped off the bus, went into a store, realized my phone wasn&#8217;t in my pocket, turned around and saw the bus drive away. Shoot.</p>

<p>I immediately changed my Google password, then upgraded my <a href="https://www.mylookout.com/features/missing-device/">Lookout for Android</a> to Premium so I could remotely lock my phone. I then began to track the phone and called the Seattle Metro. I could tell the customer service representative exactly where the bus with my phone was, but the representative said there was nothing he could do. I should try to catch the same bus when it comes back, or call them again tomorrow at 10:30 AM to contact <a href="http://metro.kingcounty.gov/cs/lostnfound.html">Lost and Found</a>. I tried to watch the bus, but I missed it, and I was at work, and that was more important.</p>

<p>Once, when I called my phone from my office phone, someone somehow picked up. I heard a women&#8217;s voice say &#8220;Oh-oh. Did you find that phone earlier?&#8221; Then there was a man&#8217;s voice saying &#8220;I can&#8217;t answer the call. It&#8217;s against the rules.&#8221;</p>

<p>Now, unfortunately, the phone&#8217;s battery is empty, and I can&#8217;t track it anymore. I don&#8217;t have a choice but to hope the bus driver found it and will take it to Lost and Found in the morning. The thing about it &#8220;being against the rules&#8221; makes me hopeful. I hope I had &#8220;Glueck im Unglueck&#8221; &#8212; that I got lucky in this misfortune.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.concurrentaffair.org/2011/09/26/lost-my-phone/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Three Logicians Walk into a Bar</title>
		<link>http://www.concurrentaffair.org/2011/09/25/three-logicians-walk-into-a-bar/</link>
		<comments>http://www.concurrentaffair.org/2011/09/25/three-logicians-walk-into-a-bar/#comments</comments>
		<pubDate>Sun, 25 Sep 2011 20:28:11 +0000</pubDate>
		<dc:creator>Mathias</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.concurrentaffair.org/?p=2684</guid>
		<description><![CDATA[I love it. This came to me from Spiked Math by way of Language Log, one of my long-time favorite nerdy blogs.]]></description>
			<content:encoded><![CDATA[<div class="wp-caption alignnone" style="width: 410px"><a href="http://languagelog.ldc.upenn.edu/nll/?p=3451"><img alt="Three logicians walk into a bar, from Spiked Math via Language Log" src="https://lh5.googleusercontent.com/-Xatj-FQ-hjs/Tn6lN3S3hzI/AAAAAAAAABo/lc9kzABD3J4/s400/445-three-logicians-walk-into-a-bar.png" title="Three logicians walk into a bar" width="400" height="334" /></a><p class="wp-caption-text">Three logicians walk into a bar</p></div>

<p>I love it. This came to me from <a href="http://spikedmath.com/">Spiked Math</a> by way of <a href="http://languagelog.ldc.upenn.edu/nll/?p=3451">Language Log</a>, one of my long-time favorite nerdy blogs.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.concurrentaffair.org/2011/09/25/three-logicians-walk-into-a-bar/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Registered for SPLASH 2011</title>
		<link>http://www.concurrentaffair.org/2011/09/24/registered-for-splash-2011/</link>
		<comments>http://www.concurrentaffair.org/2011/09/24/registered-for-splash-2011/#comments</comments>
		<pubDate>Sat, 24 Sep 2011 19:42:16 +0000</pubDate>
		<dc:creator>Mathias</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.concurrentaffair.org/?p=2680</guid>
		<description><![CDATA[Last night, I registered for SPLASH 2011. I&#8217;ll only be there for the Educators Symposium and the Tuesday conference sessions, though. It was a bit of a tough call, but I figured taking vacation days for something I&#8217;m still passionate &#8230; <a href="http://www.concurrentaffair.org/2011/09/24/registered-for-splash-2011/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Last night, I registered for <a href="http://splashcon.org/2011/attending/registering">SPLASH 2011</a>. I&#8217;ll only be there for the Educators Symposium and the Tuesday conference sessions, though. It was a bit of a tough call, but I figured taking vacation days for something I&#8217;m still passionate about is worth it.</p>

<p>Yesterday, September 23, was the last day of early registration pricing, and even though it was still September 23 here in the Pacific timezone, the server apparently was on Eastern time. On the website, I did not get the lower price, but Mandy Mann from <a href="http://regmaster.com/">Registration Systems Lab</a>, the company operating the registration website, already promised an $80 refund in the middle of the night.</p>

<p>Thanks for working so hard!</p>

<p>I haven&#8217;t booked a hotel yet. I don&#8217;t think I&#8217;ll choose the conference hotel, though. I hope it won&#8217;t be too cold or rainy yet in Portland and that walking a mile or two won&#8217;t be too bad. Of course, I could drive that distance too, park at the conference hotel, and still get a better price.</p>

<p>I also renewed my 24 Hour Fitness membership today by two years. I was a bit skeptical when I signed up a year ago, but the gym membership has become something I do not want to miss anymore.</p>

<p><br/>
<br/>
<strong>Update</strong></p>

<p>I now booked my hotel through Hotwire for $69 a night. I had made good experiences with Hotwire in Portland when I stayed in the Courtyard by Marriot near the Convention center. Hotwire had a hotel with a similar rating and price now, but alas, it&#8217;s a different one. The Red Lion Hotel does not nearly look as good. Oh well&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.concurrentaffair.org/2011/09/24/registered-for-splash-2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dissertation and Numbers</title>
		<link>http://www.concurrentaffair.org/2011/09/20/dissertation-and-numbers/</link>
		<comments>http://www.concurrentaffair.org/2011/09/20/dissertation-and-numbers/#comments</comments>
		<pubDate>Tue, 20 Sep 2011 16:52:13 +0000</pubDate>
		<dc:creator>Mathias</dc:creator>
				<category><![CDATA[Graduate School]]></category>
		<category><![CDATA[Pictures]]></category>
		<category><![CDATA[Thesis]]></category>

		<guid isPermaLink="false">http://www.concurrentaffair.org/?p=2673</guid>
		<description><![CDATA[I received the bound copies of my dissertation yesterday. They look nice, but they&#8217;re kind of thin, for so much work. Including front matter, there are 157 pages. Some more numbers: The source code for my dissertation project has 35,979 &#8230; <a href="http://www.concurrentaffair.org/2011/09/20/dissertation-and-numbers/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I received the bound copies of my dissertation yesterday. They look nice, but they&#8217;re kind of thin, for so much work. Including front matter, there are 157 pages.</p>

<p>Some more numbers: The source code for my dissertation project has 35,979 lines with 136,951 words. At 30 lines per page, that would be 1,200 pages; but source code lines rarely fill the whole width of the page. At 250 words per page, that would be 548 pages; but <tt>wordsInProgramsAreOftenVeryLong</tt>.</p>

<p>It&#8217;s somewhere in between. But it&#8217;s also been written over the course of seven years.</p>

<p><a href="http://www.concurrentaffair.org/wp-content/uploads/2011/09/IMAG13091.jpg"><img src="http://www.concurrentaffair.org/wp-content/uploads/2011/09/IMAG13091.jpg" alt="Bound PhD Thesis Copies" title="Bound PhD Thesis Copies" class="aligncenter size-full wp-image-2776" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.concurrentaffair.org/2011/09/20/dissertation-and-numbers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>No More NDR2 Streaming Radio?</title>
		<link>http://www.concurrentaffair.org/2011/09/19/no-more-ndr2-streaming-radio/</link>
		<comments>http://www.concurrentaffair.org/2011/09/19/no-more-ndr2-streaming-radio/#comments</comments>
		<pubDate>Mon, 19 Sep 2011 05:19:09 +0000</pubDate>
		<dc:creator>Mathias</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.concurrentaffair.org/?p=2665</guid>
		<description><![CDATA[A few days ago, something really bad happened. The live stream of my favorite radio station, NDR2 from Hamburg, Germany, stopped working for me. For the last few years, NDR2 has been the music I listen to, when I&#8217;m at &#8230; <a href="http://www.concurrentaffair.org/2011/09/19/no-more-ndr2-streaming-radio/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>A few days ago, something really bad happened. The <a href="http://www.ndr.de/ndr2/onaircenter101-onaircenterpopup.html">live stream</a> of my favorite radio station, NDR2 from Hamburg, Germany, stopped working for me. For the last few years, NDR2 has been the music I listen to, when I&#8217;m at home and sometimes also when I&#8217;m at work. I listen to it on my mobile phone. It makes me feel like I&#8217;m staying in touch, and the last few days without it just weren&#8217;t the same.</p>

<p>While the NDR2 team was kind enough to respond and tried to help, unfortunately they did not know why the MP3 stream was not working for me anymore either. If I download the <a href="http://www.ndr.de/resources/metadaten/audio/m3u/ndr2.m3u">m3u file</a> that NDR2 links to, and I get a <a href="http://ndrstream.ic.llnwd.net/stream/ndrstream_ndr2_hi_mp3">streaming MP3 URL</a>, but when I access that, I get a 404:</p>

<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">mgricken@scalar ~<br />
$ wget http://www.ndr.de/resources/metadaten/audio/m3u/ndr2.m3u<br />
Resolving www.ndr.de (www.ndr.de)... 213.71.15.227<br />
HTTP request sent, awaiting response... 200 OK<br />
Length: 59 [audio/x-mpegurl]<br />
Saving to: `ndr2.m3u'<br />
2011-09-18 21:40:34 (1.73 MB/s) - `ndr2.m3u' saved [59/59]<br />
<br />
mgricken@scalar ~<br />
$ cat ndr2.m3u<br />
http://ndrstream.ic.llnwd.net/stream/ndrstream_ndr2_hi_mp3<br />
<br />
mgricken@scalar ~<br />
$ wget `cat ndr2.m3u`<br />
Resolving ndrstream.ic.llnwd.net (ndrstream.ic.llnwd.net)... 69.28.151.253<br />
HTTP request sent, awaiting response... 404 File Not Found<br />
2011-09-18 21:49:37 ERROR 404: File Not Found.</div></td></tr></tbody></table></div>

<p>Curiously, the WMA stream that NDR2 offers is still working; therefore, it&#8217;s mainly a problem on my Android phone. Fortunately, <a href="http://androidforums.com/android-media/9574-windows-media-player.html#post157295">on AndroidForums.com I found a work-around</a> that&#8217;s not quite as nice as the original NDR2 web player, but at least it works:</p>

<p><a href="http://www.yourmuze.fm/station/ndr2-0">Yourmuze.FM</a> offers a link to a <a href="http://www.yourmuze.fm/webplayer/?id=57818">Flash web player</a> that plays the WMA stream, and that also works on Android.</p>

<p>I still hope that I get back the nice original <a href="http://www.ndr.de/ndr2/onaircenter101-onaircenterpopup.html">NDR2 web player, with current, previous, and next song information</a>, but for now, I have my radio back.
<br/></p>

<p><strong>Update</strong></p>

<p>The original <a href="http://www.ndr.de/ndr2/onaircenter101-onaircenterpopup.html">NDR2 web player</a> is working again. It seems like whatever service NDR2 uses for streaming fixed the problem.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.concurrentaffair.org/2011/09/19/no-more-ndr2-streaming-radio/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://www.ndr.de/resources/metadaten/audio/m3u/ndr2.m3u" length="59" type="audio/x-mpegurl" />
		</item>
		<item>
		<title>Suggestions for Better Java 7 Support in DrJava</title>
		<link>http://www.concurrentaffair.org/2011/09/04/suggestions-for-better-java-7-support-in-drjava/</link>
		<comments>http://www.concurrentaffair.org/2011/09/04/suggestions-for-better-java-7-support-in-drjava/#comments</comments>
		<pubDate>Sun, 04 Sep 2011 19:43:00 +0000</pubDate>
		<dc:creator>Mathias</dc:creator>
				<category><![CDATA[DrJava]]></category>

		<guid isPermaLink="false">http://www.concurrentaffair.org/?p=2655</guid>
		<description><![CDATA[I just looked through the new language features in Java 7, and experimented with them in DrJava. None of the changes are supported in the Interactions Pane, and there will be a lot of required work to make these things &#8230; <a href="http://www.concurrentaffair.org/2011/09/04/suggestions-for-better-java-7-support-in-drjava/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I just looked through the <a href="http://download.oracle.com/javase/7/docs/technotes/guides/language/enhancements.html#javase7">new language features in Java 7</a>, and experimented with them in <a href="http://drjava.org">DrJava</a>.</p>

<p>None of the changes are supported in the Interactions Pane, and there will be a lot of required work to make these things work there. We&#8217;ll have to change the parser, change the type checker, change the interpreter, and so on.</p>

<p>There are, however, smaller changes that we should do to provide better support in the Definitions Pane:</p>

<ol>
    <li>Binary literals <code class="codecolorer java mac-classic"><span class="java"><span style="color: #000066; font-weight: bold;">int</span> i <span style="color: #339933;">=</span> 0b100000<span style="color: #339933;">;</span></span></code> are not syntax-highlighted correctly.</li>
    <li>Numeric literals with an underscore in them <code class="codecolorer text mac-classic"><span class="text">int i = 1_000; double d = 3.141_5927;</span></code> are not syntax-highlighted correctly.</li>
    <li>In some cases, try-with-resources is indented badly:

<div class="codecolorer-container java default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; <span style="color: #666666; font-style: italic;">// badly indented</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> tryWithResources2<span style="color: #009900;">&#40;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Astring+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">String</span></a> f<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">try</span> <span style="color: #009900;">&#40;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Ainputstream+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">InputStream</span></a> is <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Afileinputstream+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">FileInputStream</span></a><span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">new</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Afile+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">File</span></a><span style="color: #009900;">&#40;</span>f<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Ainputstream+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">InputStream</span></a> is2 <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Afileinputstream+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">FileInputStream</span></a><span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">new</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Afile+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">File</span></a><span style="color: #009900;">&#40;</span>f<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;is.<span style="color: #006633;">read</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #000000; font-weight: bold;">catch</span><span style="color: #009900;">&#40;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Aioexception+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">IOException</span></a> e<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;e.<span style="color: #006633;">printStackTrace</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #009900;">&#125;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>

</li>
</ol>

<p>Everything else looks pretty good. Here&#8217;s the sample class that I used:</p>

<div class="codecolorer-container java default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br />44<br />45<br />46<br />47<br />48<br />49<br />50<br />51<br />52<br />53<br />54<br />55<br />56<br />57<br />58<br />59<br />60<br />61<br />62<br />63<br />64<br />65<br />66<br />67<br />68<br />69<br />70<br />71<br />72<br />73<br />74<br />75<br />76<br />77<br />78<br />79<br />80<br />81<br />82<br />83<br />84<br />85<br />86<br />87<br />88<br />89<br />90<br />91<br />92<br />93<br />94<br />95<br />96<br />97<br />98<br />99<br />100<br />101<br />102<br />103<br />104<br />105<br />106<br />107<br />108<br />109<br />110<br />111<br />112<br />113<br />114<br />115<br />116<br />117<br />118<br />119<br />120<br />121<br />122<br />123<br />124<br />125<br />126<br />127<br />128<br />129<br />130<br />131<br />132<br />133<br />134<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">java.io.*</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">java.util.*</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> Java7Samples <span style="color: #009900;">&#123;</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> main<span style="color: #009900;">&#40;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Astring+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">String</span></a><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> args<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; stringSwitch<span style="color: #009900;">&#40;</span>args<span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; intSwitch<span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">new</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Ainteger+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">Integer</span></a><span style="color: #009900;">&#40;</span>args<span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; tryWithResources<span style="color: #009900;">&#40;</span>args<span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; tryWithResources2<span style="color: #009900;">&#40;</span>args<span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; multiCatch<span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">new</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Ainteger+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">Integer</span></a><span style="color: #009900;">&#40;</span>args<span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">3</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// bad integer syntax highlighting</span><br />
&nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">int</span> i <span style="color: #339933;">=</span> 0b100000<span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Asystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">System</span></a>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span>i<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// bad numeric syntax highlighting</span><br />
&nbsp; &nbsp; i <span style="color: #339933;">=</span> <span style="color: #cc66cc;">1</span>_000_000<span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Asystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">System</span></a>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span>i<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; i <span style="color: #339933;">=</span> <span style="color: #cc66cc;">2</span>__000__000<span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Asystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">System</span></a>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span>i<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// int illegal = _1000;</span><br />
&nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// int illegal2 = 1000_;</span><br />
&nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">double</span> d <span style="color: #339933;">=</span> <span style="color: #cc66cc;">123</span>_456.789_012<span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Asystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">System</span></a>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span>d<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> stringSwitch<span style="color: #009900;">&#40;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Astring+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">String</span></a> arg<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">switch</span><span style="color: #009900;">&#40;</span>arg<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">case</span> <span style="color: #0000ff;">&quot;one&quot;</span><span style="color: #339933;">:</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Asystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">System</span></a>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;case one&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">break</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">case</span> <span style="color: #0000ff;">&quot;two&quot;</span><span style="color: #339933;">:</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">case</span> <span style="color: #0000ff;">&quot;three&quot;</span><span style="color: #339933;">:</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Asystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">System</span></a>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;case two or three&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">break</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">default</span><span style="color: #339933;">:</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Asystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">System</span></a>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;default case&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> intSwitch<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">int</span> arg<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">switch</span><span style="color: #009900;">&#40;</span>arg<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">case</span> <span style="color: #cc66cc;">1</span><span style="color: #339933;">:</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Asystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">System</span></a>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;case 1&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">break</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">case</span> <span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">case</span> <span style="color: #cc66cc;">3</span><span style="color: #339933;">:</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Asystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">System</span></a>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;case 2 or 3&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">break</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">default</span><span style="color: #339933;">:</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Asystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">System</span></a>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;default case&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> tryWithResources<span style="color: #009900;">&#40;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Astring+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">String</span></a> f<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">try</span> <span style="color: #009900;">&#40;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Ainputstream+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">InputStream</span></a> is <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Afileinputstream+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">FileInputStream</span></a><span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">new</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Afile+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">File</span></a><span style="color: #009900;">&#40;</span>f<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; is.<span style="color: #006633;">read</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">catch</span><span style="color: #009900;">&#40;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Aioexception+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">IOException</span></a> e<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; e.<span style="color: #006633;">printStackTrace</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #666666; font-style: italic;">// badly indented</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> tryWithResources2<span style="color: #009900;">&#40;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Astring+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">String</span></a> f<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">try</span> <span style="color: #009900;">&#40;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Ainputstream+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">InputStream</span></a> is <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Afileinputstream+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">FileInputStream</span></a><span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">new</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Afile+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">File</span></a><span style="color: #009900;">&#40;</span>f<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Ainputstream+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">InputStream</span></a> is2 <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Afileinputstream+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">FileInputStream</span></a><span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">new</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Afile+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">File</span></a><span style="color: #009900;">&#40;</span>f<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;is.<span style="color: #006633;">read</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #000000; font-weight: bold;">catch</span><span style="color: #009900;">&#40;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Aioexception+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">IOException</span></a> e<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;e.<span style="color: #006633;">printStackTrace</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #009900;">&#125;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000000; font-weight: bold;">class</span> Ex1 <span style="color: #000000; font-weight: bold;">extends</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Aruntimeexception+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">RuntimeException</span></a> <span style="color: #009900;">&#123;</span> <span style="color: #009900;">&#125;</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000000; font-weight: bold;">class</span> Ex2 <span style="color: #000000; font-weight: bold;">extends</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Aruntimeexception+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">RuntimeException</span></a> <span style="color: #009900;">&#123;</span> <span style="color: #009900;">&#125;</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000000; font-weight: bold;">class</span> Ex3or4 <span style="color: #000000; font-weight: bold;">extends</span> <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Aruntimeexception+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">RuntimeException</span></a> <span style="color: #009900;">&#123;</span> <span style="color: #009900;">&#125;</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000000; font-weight: bold;">class</span> Ex3 <span style="color: #000000; font-weight: bold;">extends</span> Ex3or4 <span style="color: #009900;">&#123;</span> <span style="color: #009900;">&#125;</span><br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000000; font-weight: bold;">class</span> Ex4 <span style="color: #000000; font-weight: bold;">extends</span> Ex3or4 <span style="color: #009900;">&#123;</span> <span style="color: #009900;">&#125;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> doSomething<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">int</span> i<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">throws</span> Ex1, Ex2, Ex3, Ex4 <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">switch</span><span style="color: #009900;">&#40;</span>i<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">case</span> <span style="color: #cc66cc;">1</span><span style="color: #339933;">:</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">throw</span> <span style="color: #000000; font-weight: bold;">new</span> Ex1<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">case</span> <span style="color: #cc66cc;">2</span><span style="color: #339933;">:</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">throw</span> <span style="color: #000000; font-weight: bold;">new</span> Ex2<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">case</span> <span style="color: #cc66cc;">3</span><span style="color: #339933;">:</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">throw</span> <span style="color: #000000; font-weight: bold;">new</span> Ex3<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">case</span> <span style="color: #cc66cc;">4</span><span style="color: #339933;">:</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">throw</span> <span style="color: #000000; font-weight: bold;">new</span> Ex4<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> handleEx1Or2<span style="color: #009900;">&#40;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Aruntimeexception+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">RuntimeException</span></a> e<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Asystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">System</span></a>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;handlEx1Or2&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> handleEx3Or4<span style="color: #009900;">&#40;</span>Ex3or4 e<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Asystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">System</span></a>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;handlEx3Or4&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> multiCatch<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">int</span> i<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">try</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; doSomething<span style="color: #009900;">&#40;</span>i<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">catch</span><span style="color: #009900;">&#40;</span>Ex1 <span style="color: #339933;">|</span> Ex2 ex<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; handleEx1Or2<span style="color: #009900;">&#40;</span>ex<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">catch</span><span style="color: #009900;">&#40;</span>Ex3 <span style="color: #339933;">|</span> Ex4 ex<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; handleEx3Or4<span style="color: #009900;">&#40;</span>ex<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> multiCatch2<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">int</span> i<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">try</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; doSomething<span style="color: #009900;">&#40;</span>i<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">catch</span><span style="color: #009900;">&#40;</span>Ex1 <span style="color: #339933;">|</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Ex2 ex<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; handleEx1Or2<span style="color: #009900;">&#40;</span>ex<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">catch</span><span style="color: #009900;">&#40;</span>Ex3 <span style="color: #339933;">|</span> <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Ex4 ex<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; handleEx3Or4<span style="color: #009900;">&#40;</span>ex<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> Map<span style="color: #339933;">&lt;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Astring+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">String</span></a>, String<span style="color: #339933;">&gt;</span> diamond<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">return</span> <span style="color: #000000; font-weight: bold;">new</span> HashMap<span style="color: #339933;">&lt;&gt;</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <br />
&nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> diamond2<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; Map<span style="color: #339933;">&lt;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3Astring+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #003399;">String</span></a>, String<span style="color: #339933;">&gt;</span> map <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> HashMap<span style="color: #339933;">&lt;&gt;</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>

<p><strong>Update</strong></p>

<p>I filed bugs <a href="https://sourceforge.net/tracker/?func=detail&#038;aid=3404387&#038;group_id=44253&#038;atid=438935">3404387</a> and <a href="https://sourceforge.net/tracker/?func=detail&#038;aid=3404389&#038;group_id=44253&#038;atid=438935">3404389</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.concurrentaffair.org/2011/09/04/suggestions-for-better-java-7-support-in-drjava/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Presidential Active Lifestyle Award</title>
		<link>http://www.concurrentaffair.org/2011/09/03/presidential-active-lifestyle-award/</link>
		<comments>http://www.concurrentaffair.org/2011/09/03/presidential-active-lifestyle-award/#comments</comments>
		<pubDate>Sun, 04 Sep 2011 03:13:57 +0000</pubDate>
		<dc:creator>Mathias</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.concurrentaffair.org/?p=2647</guid>
		<description><![CDATA[I just completed the PALA challenge: Five days of exercising at least 30 minutes, for six out of eight weeks. I&#8217;ve run about 72 miles (115 km), biked several times, and I&#8217;ve zumba-ed (if you just look at the instructor, &#8230; <a href="http://www.concurrentaffair.org/2011/09/03/presidential-active-lifestyle-award/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I just completed the <a href="http://www.presidentschallenge.org/challenge/active/index.shtml">PALA challenge</a>: Five days of exercising at least 30 minutes, for six out of eight weeks.</p>

<p>I&#8217;ve run about 72 miles (115 km), biked several times, and I&#8217;ve zumba-ed (if you just look at the instructor, and not at yourself in the mirror, you can pretend that you are an amazing dancer).</p>

<div id="attachment_2648" class="wp-caption aligncenter" style="width: 642px"><a href="http://www.presidentschallenge.org/challenge/active/index.shtml"><img src="http://www.concurrentaffair.org/wp-content/uploads/2011/09/pala-award.png" alt="Presidential Active Lifestyle Award" title="pala-award" width="632" height="357" class="size-full wp-image-2648" /></a><p class="wp-caption-text">Presidential Active Lifestyle Award</p></div>

<p>I&#8217;m pretty satisfied with myself. In absolute terms, this is probably not an achievement worth mentioning. It&#8217;s not getting me to the Olympics<sup><a href="#footnote-1-2647" id="footnote-link-1-2647" title="See the footnote.">1</a></sup>. But in relative terms, it is. I have become a much better me. I&#8217;m 31 years old, I finished grad school, I&#8217;m working full time, and I&#8217;m in the best shape of my life.</p>
<br />Footnotes:<br /><ol class="footnotes"><li id="footnote-1-2647">Unless you&#8217;re talking about the <a href="http://en.wikipedia.org/wiki/Olympic_Mountains">Olympic Mountains</a>, in which case, it <em>does</em> get me there.  [<a href="#footnote-link-1-2647">back</a>]</li></ol>]]></content:encoded>
			<wfw:commentRss>http://www.concurrentaffair.org/2011/09/03/presidential-active-lifestyle-award/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

