Friday, April 13, 2007

Erlang and Haskell Books: First Impressions

I recently picked up a beta copy of Programming Erlang: Software for a Concurrent World to go along with my (paper) copy of Programming in Haskell. I figured if I had both books, I could make quick runs through them as I try to decide between Haskell and Erlang as the FP language I'm going to focus on this summer. What follows isn't really a review of either book, just a few first impressions.

Programming Erlang: Software for a Concurrent World looks like to be a very accessible book, that also goes into enough depth to be worthwhile. The version I got yesterday had 279 pages in the PDF, but an update was released today and my new copy hasn't found it's way here yet. I like what I've read of Joe Armstrong's writing and examples, and have caught on quickly to the initial concepts.

Programming in Haskell surprised me by being really small, only 171 pages (including the index). It on the scale of 'The C Programming Language', and so far it reminds me a lot of that book. I have to admit though, that I've always been put off by the seeming need of Haskell writers to use 'special Haskell characters' in their text, Programming Haskell even includes a table of 15 such symbols and how to represent them in ASCII. Bleargh!

So far, I'm leaning towards Erlang (mostly because of concurrency), but I'm not going to make up my mind for a while yet — too many other deadlines I need to deal with right now. As I get closer to the summer, I'll let you know which way I decide to go. (I'll also get real reviews of the two books up fairly soon.)

Wednesday, April 11, 2007

XRuby 0.1.4

On Tuesday April 10th, he XRuby team announced the release of XRuby 0.1.4, which can can be downloaded from code.google.com. This release feaures a new runtime (written by Dreamhead) that fixes a number of compatibility issues with MRI. According to their website, this release is also "much faster" than MRI, it will be interesting to see what happens the next time Antonio runs his benchmarks.

Upcoming work looks very promising too, Beanworms is working on the debugger, Yuesefa has a Google Summer of Code project to rewrite the XRuby parser to ANTLR 3.0, and Femto has also joined the team and will be involved in the parser rewrite.

The ANTLR 3.0 parser has a lot of potential outside the XRuby project. Since ANTLR 3.0 includes Ruby as a target output language, this may provide a solid Ruby in Ruby parser for other developers to use as well.

It looks like XRuby is a project that's gathering steam even though it doesn't get nearly the press that YARV, JRuby, or rubinius do.

Tuesday, April 10, 2007

March Blogging Contest Winner

March's contest had the lowest turnout of any of the contests so far — even April's has almost generated as many entries. That didn't mean it was any less difficult to pick a winner though. There were four top flight entries:

  • one from Sean Hussey
  • one from Jeremy McAnally
  • and two from Phillip Toland (here and here)

I rally liked all of the entries, but Phillip's entries stood out. In fact, we had a hard time picking between them. In the end, we decided to pick him as the winner and to give credit to both of his posts. One thing that Phillip wrote summed up my thoughts about the contest. At the end of his article about Implementing Django's modular app feature, he wrote:

"New and experimental features can be distributed and evaluated by the Rails community at large without needing approval or acceptance from the core team. Some functionality may even be better implemented in plugins than in the core framework."
If this contest has made you think about how Rails might be better, I'd suggest you follow Phillip's suggestion and put together a plugin and some documentation — who knows you might just write the next big thing for Rails.

Phillip picked three great Apress books:

I'd like to thank Apress again for sponsoring these contests. They've been wonderful to work with through the first three months, and I look forward to the next three contests.

Monday, April 09, 2007

Apologies all around

I'm sure ya'll have noticed that I've not been very active recently. I've had a couple of emails about it, and Sean wrote in a comment on another post: "Any word on when the results will be in for the March contest?" Sadly, I've been more or less flat on my back for the last ten days with a really nasty cold/flu/virus thing. Today is really the first day I've been doing anything real (though I did manage to get a short post out to kick of the April contest). I don't want to make any promises right now, but I'm hoping to get things back on track this week. (And, yes, Sean that should include an announcement about March's contest.)

Tuesday, April 03, 2007

April Bloggin Contest

Ok, it's time for the April Blogging Contest. Sorry that this is coming out a little bit late. I've been slammed by a nasty cold, and a little behind on everything. Fortunately, I seem to be on the upswing after four days of sleeping 14-16 hours a day and hiding under a pile of quilts.

With Ruby 2.0 and all the alternative implementations in the air, I've been drawn to the idea of changes. This month's blogging contest theme is: "What Changes would make Ruby a better language without making it into something that isn't Ruby?"

Every serious programmer knows that his (or her) favorite programming language has warts. Here's you're opportunity to tell someone about it. All you need to do is post your thoughts on your own blog and link to them in the comments here. I'll accept entries until midnight (MDT) on April 30th. Then I'll work with my to co-judges to pick the winning entry.

As before, the writer of the winning entry will get three Apress books of his choice. So, what are you waiting for, it's time to win some books.