Tuesday, 14 December 2010

And It’s I-o Silver Lining

Will Io finally find a way to win me over, or will the silver lining just be that this is the last day of Io, and I can soon move on to the next language? Let’s find out.

In the opening paragraph of day 3 the author tells us that he found the first few days frustrating but after a couple of weeks it had started to click & helped change the way he thinks. Spurred on by these words I fired up the interactive console again, and took me straight back to the non-existent .io_history error message :( I think that fate doesn’t want me to like Io.

The book went on to describe how to create DSLs with Io. Following on from the previous day showing us how we can create custom operators etc. this seems like a good fit, but not so much that I was bubbling over with delight by the end of that section.

Following that we had a section on concurrency. It started with coroutines, this is a way of writing asynchronous code where the developer states exactly where control can be yielded to another thread which should lead to fewer heisenbugs. This struck me as a nice design. Then came actors and finally futures which seem a lot like Tasks in .netland. The provided sample called URL to retrieve a page from the web, but this library doesn’t seem to be included by default, so I was left with an error message stating that Object does not respond to URL. Once again these issues left me feeling like I didn’t want to dive into the self study section which dealt with expanding upon the DSL code from earlier in the chapter.

I’ve wanted to like Io. The intro to it had sparked some interest, but the constant niggles to get anything to happen have sapped my enthusiasm too quickly. As he sums up the language, Bruce mentions how syntactic sugar is a matter of taste, Ruby has lots whereas Io has none, based on the preferences of their creators. Personally I find myself drawn in to the Ruby style (even if I dislike the excessive use of the underscore in names). Add this to the problems that I’ve had getting anything to run and it just lead me further away from embracing Io. Still, no-one said I need to end up loving them all.

Next up, Prolog.

No comments:

Post a Comment