Wednesday, January 30, 2008

Arc

(I tried to post this a few days ago, but blogger was being crabby.)

So Paul Graham released Arc yesterday... or at least a first draft. From reading the tutorial it sounds like a fun little language so far. It definitely addresses a lot of my annoyances with CL (although I'm so rough with CL I'm barely qualified to make a genuine critique). It just seems a lot more Scheme-ish... and I love Scheme, so of course I will like it.

I haven't gotten to sit down and actually hack away at it, but from what little I have played with, I must say that I absolutely adore the [... _ ...] and composition syntax. It just makes lines so much easier to read once you get used to them. To give a trivial example, (keep [odd _] '(1 2 3 4 5)) is so much easier to grok than (keep (fn (x) (odd x)) '(1 2 3 4 5)) or the CL variant which would be something like (filter (lambda (x) (oddp x)) '(1 2 3 4 5)). (All those examples should return a list of only the odd numbers.)

I got very sick last Thursday with a stomach flu and spent most of the day purging via all available means. Friday I was still feverish and weak, but mostly recovered by the next morning. Missing work will be a punch in the wallet, but oh well, not much I could do. I spent most of the time sleeping when I could, so not much got done on anything.

You know, I really enjoy writing code in Lisp-y languages. I'm not entirely sure why. I think it's the succinctness of it. The initial release comes with a blog implementation of only 107 lines. Yes, an entire blog written in 107 lines of code. That is short.

Today was mostly spent tracking down these two very annoying Java bugs. It would be nice if the stack trace was at all useful in tracking stuff down. Sadly, I have to resort to sticking in println statements pretty much every time to figure out where the errors are. Tonight I think it will be time to play with Arc.

0 comments: