Monday 16 January 2012

Clojure! Also, Emacs (I'm good with post titles.)

I recently (a few months ago?) started learning Clojure. It's a wonderful language. LISPs have fascinated me for a long time, I tried a flavor of Scheme in the past (Racket), but couldn't quite get into, despite my fascination for everything that family of languages stands for, with it's philosophy, it's appearance...

Nevermind. Clojure. I wanted to learn it. It promised a lot, parts of which I couldn't (and partially still can't) grasp the significance of, but as far as I can tell, it delivered.

I really could go all fanboy over it for significant, semi-infinite stretches of time (and my roommate just assumes it's going to be about Clojure when I tell him I have something interesting to say by now), so let's get back to earth.

So, installation. As it so often happens with this kind of awesome things, installation isn't quite that straightforward, in the Windows-sense of click, click, click some more, it runs. Actually, getting it to run under Windows was somewhat annoying.

I happen to run a Linux Mint VM, so I tried it there. I installed Emacs and tried to get SLIME/Swank to run (basically a neater REPL for LISPlikes), but numerous step-by-step tutorials have failed me, so I clean-installed Emacs and did everything by hand. Now, it's not the most "optimal", "comfortable" or anything like that setup, but the most important thing is, I'm wrestling with Emacs and Emacs Lisp myself (the latter being the reason I originally decided for Emacs over Vim, actually). It runs. There is this extremely awesome tool called Leiningen. It makes the entire thing much more comfortable than any graphical interface ever could. So does Emacs. But it takes some commitment.

I can only recommend the rough path, really. It's done me good so far.

I'll probably post some code snippets or stuff in the future. I dunno.

No comments: