One of the first issues I had when evaluating scheme as a possible replacement for Python as my hobby language was its apparent lack of module/library/namespace system. How do people possibly build big programs? I wondered.
Now it turns out most (all?) scheme implementations have features to deal with modules and libraries. Gambit’s is particularly nebulous […]
Somebody asked me about gambit-c the other day, and why I was using that as opposed to some other language or runtime for my own-time coding stuff.
Despite the scheme language being all cool, the thing that really made his eyes light up was the C features in gambit (it is called gambit-c for a reason). […]
Finally, it’s starting to feel like I’m getting the hang of the lisp style. The key for me seems to be in re-reading the contents of srfi-1 every time I think I need a loop.
I’m still perservering with Gambit scheme, and progressing pretty slowly it has to be said. The first thing I’ve been missing is the lack of refactoring tools for scheme.
I wrote the basic python refactoring functionality in bicyclerepairman a long while ago, and having it as part of my daily toolset has strongly influenced the way […]
I’ve been battling again with Scheme recently.
Having spent the last couple of months playing with various languages, I’ve come to the conclusion that scheme is the only one that has any real possibility of becoming my next ‘general purpose language’. Python held that crown for many years, but its lack of blocks and concurrency caused […]
This just in:
The R6RS draft is out! The 6th revision of the scheme language, and it looks like it fills the language’s biggest holes: namely a standard library module system, unicode strings and standardized exception/condition api. Hurrah!
Joel Spolski rattles the java cage a second time, illustrating that:
Java is really bad at functional programming
Functional programming is really important for utilizing massively parallel hardware
In particular I like the way Spolski uses Javascript for his examples. The conception of this language has always been a bit of an enigma to me, especially given […]
The Lisp style has been really trying my sense of aesthetic.
Yesterday I got really hung up on the fact that I prefer the ‘message-passing’ approach to OO rather than the ‘call a function and pass in the object as an arg’ style. The latter just feels clumsy to me.
Then it occurred to me that lisp […]
I’ve been reading ‘The Little Schemer‘ (a new edition of ‘The Little LISPer’) and ‘The Seasoned Schemer’ recently, recommended to me by JP (who (of course!) has a signed copy of the original). This is classic text, with the first edition of ‘lisper’ appearing in the 70s. The striking thing about these books isn’t […]
I was surprised to find that lisp had a more powerful way of dealing with errors than exceptions (which I had previously assumed were state-of-the-art in program error handling).
Lisp conditions are similar to exceptions, except that the condition handler is able, if desired, to resume execution to the erroring function by invoking one of any […]
I’ve been working through the Seibel book and I’m quite keen to draw comparisons with other languages (especially python+java), since that’s what first attracted me to learn more in the first place. I thought it would be better to blog as I went along (while I’m motivated) rather than when I’d got to the end […]
I started programming seriously when I was at school. I became seduced by the idea of writing games and ended up learning 6502 and then ARM assembler. I sort of skipped the typically-british BBC BASIC introduction because I was impatient and had read in my Dad’s computer magazines that real games didn’t get written in […]