Well then, well then.

Paddling the River Nene (Peterborough)

Went with the Canoe Camping Club to a meet at Peterborough. Stayed at a very weird campsite called Yarwell Mill. Costs about £10 a night and only has one toilet block for 200+ caravans. Owners had a bit of an attitude problem. I felt I was paying them so they could do me a favour, a sellers’ market perhaps.The paddling was hard against the wind on the Friday. I was in a sea kayak and one of the kids in a new Piranha Pilot, which the club (pen pads) bought recently. Rosie was in an unladen open with the wind facing. Very hard day.Rosie thinks the pilots are good but I’m not convinced why a sea boat should have so much rocker.

We took Saturday off and went for a wander around Rutland Water, stopping toget some food and stuff at Oakham. Went to Lands End outlet store and spent small fortune on clothes for Deb. Nice meal in a little cafe near Boots (you have to know its there and dow a side entry).

Sunday we did half of the main paddle and got out.

Monday Rosie took Howard and Deb paddling for the morning and I chilled out.Jon went playing with the other kids and said he wanted a fishing rod. Nope. Too cruel.

Lisp

Finally got my hands on Paul Graham’s Ansi Common Lisp book. I’vebeen working with Lisp Studio (see earlier blog) and found a windows version of the Harvard Common Lisp interpreter (which has much more helpful error messages). Also been using good ‘ole Emacs. Paul has also made the text of hisOn Lisp available <Ahref=“http://www.paulgraham.com/onlisptext.html”>http://www.paulgraham.com/onlisptext.html. I love Lisp,even after a short exposure to it. A lot of the ideas in object orientation aresimply to shoe horn the stuff Lisp has always had. I was working my way through one of the examples and wanted to sort a slightly odd data structure. No problem, just call the system sort with your own inline function that does the comparison for you. I know this can be done in other languages but in Lisp it iseasy and you don’t have to name the function or anything. It just fucking works.

I’ve started looking at building a Lisp interpreter in Java, I found a C example but its full of horrible C- and Unix-isms like setjmp if you get anerror. It’s odd but the C version is only 900 lines of code. Have a look at ithttp://www.civilised.com, there’s also a.ps of a document describing how it was built. Of course, once initialised, it loads a lot of Lisp definitions to get you the rest of the functions. To get asimilar Java thing will take a lot more effort (and you can’t use crap like setjmp to handle errors either). I think Java’s exception handling will work well underneath but hey, it was ripped out of Lisp in the first place methinks. I really hate it when the C code has #defines for == and other standard operators, tho’, totally daft cleverdick stuff. (You can tell I used tohack C for a living, don’t get me started on what makes good and bad style).

At last, the tooth

Finally got it out of my head last Friday 25th. The pain stopped, what can I say? It took a couple of attempts with different calipers from the ones my original dentist used. Now I have a broken filling for repair. The biggest problem was the injections, particularly when one was administered directly into the hole where the tooth used to be and I didn’t expect it.

Treweryn tour (sundae)

Not much to report, did the usual tour down to Bala. A good day.

A surprise

A new sale of the product I work on has been taken away from us and given to another office on the other side of the world. I should be really annoyed but to be honest I’m bored to death with the bastard; let ‘em have it, maybe they’ll finally work out how to write software that actually meets the requirements and even has something approximating an architecture. After the dog’s breakfast they delivered last time I can’t wait.

Off to Camelot tomorrow with the kids, their school is closed because of the local elections.