Archive for languages

Setting up Haskell on OS X

I’m currently on a mission to get my brain wrapped around functional languages. My guys at work have convinced me that Haskell is the way to go. A group of us have decided to purchase the book “Real World Haskell” and meet regularly to discuss our progress.

As with any new development endeavor, I needed to setup my environment. The Haskell folks make it fairly easy to get things going. Below are the steps I took to get a working ghci (The command-line Haskell interpreter).

  • Downloaded the GHC OS X package from here: http://hackage.haskell.org/platform/
  • Realized that I hadn’t read the documentation correctly and overlooked the fact that a prerequisite was to have XCode installed. So I hopped over to ADC and grabbed the latest iPhone SDK (which includes the latest XCode).
  • That should have basically been it, but since TextMate is my preferred editor on OS X, I sought out a Haskell bundle for it. Much to my chagrin, I would have to kick up my nerd action a step and check out the bundle via Subversion. The current SVN URL for the bundle is: http://svn.textmate.org/trunk/Bundles/Haskell.tmbundle/. It turned out to not be that big of a deal…they have pretty good documentation on the TextMate site. As luck would have it, they used the Haskell bundle as the canonical example (see Section 5.7).

That’s it. Now I can actually get my functional language geek on.

2009 Technical Resolutions

I began putting my personal 2009 Resolutions/Goals to paper today and by the time I was done found out that a good chunk (> 50%) were technology related.  I figure that I should make them public so that if nothing else, I feel just a little more pressure to not sluff them off.

The main focus for 2009 is learning new languages.  It’s all the action that I’ve seen develop over the past 2-3 years, but haven’t made a priority to learn given that at work I’ve moved out of being a developer and now manage developers (boo…hiss…).  So here they are, in order (with completion* dates for each):

* – I’m defining “complete” in that I should be able to do all of the following:

  • Give a 15-30 minute presentation on it
  • Write a small-ish app
  • Be comfortable enough with the language that if I needed to start a project, I would be able to hit the ground running in the language
  • Be able to intelligently decide where/if a certain technology/language could fit in our current exclusively Java environment.

If anyone has good book, site, newsgroup, etc recommendation, please let me know.