Over the Xmas break I followed a link from the Joel on software blog (see linked entry) and got to an on-line version of The Structure and Interpretation of Computer Programs, which got me looking at Lisp again. I’ve been translating the examples from Scheme to Common Lisp. At this level it’s mainly changing define for defun and moving the function name out of the list. I believe that the two languages veer more later, but you can still do useful things in them. Scheme is allegedly more restricted because it’s a teaching language. (have a look at the flame wars on the net – I’m keeping out of it)
For the first time in ages, when I was working through the questions, I was faced with a genuine mystery about why something didn’t work. Gahd it was refreshing. I had to learn how to use the GNU CLisp debugger using (step …). Then work out what the problem was.
This got me thinking about dev environments and I decided to have another go at Emacs. Downloaded XEmacs for windows and have spent some jolly time getting it to understand PL/SQL properly and do auto indentation the way I want it done. Still not quite right, but it’ll do.
Spent a pleasant time today at work with SQL*Plus in one buffer and copying stuff from one place to another and executing it.
I will post how I did things another day – I want to get some sleep now. Back at work after a nice long break and I’m feeling a bit washed out.
Joel replied to my mail and pointed out that Java isn’t really the new C; it’s the new VB. All of the irritating non-projects that used to get written in VB are now (at least some of them) being done in Java – hence all of the frameworks rather than a way to Just Get It Done. I think he’s right, and this means I’ve been learning some kind of weird proxy VB, which probably explains why I don’t like it.
Have a look at Oracle’s project SQL Developer. It looks like the SQL part of JDeveloper unbundled with some extra reports. Maybe Quest will start charging something slightly less silly for TOAD. Definitely worth a look, and it’s free.