2021-05-24 from the editor of ~insom
------------------------------------------------------------
I think I am ready to give up on ever reading SICP.
It was one of those "well we're spending a lot of time at
home" pandemic things that I started with. I also poured a
reasonable amount of time into Forth; enough to solve some
puzzle-style problems and feel a sense of achievement.
That said, I don't think I actually want to learn Lisp or
Forth any further -- at least not with the idea that they
will unlock some fundamental understanding of computers.
I still like to play with Racket, but I think that --
because I dropped out of University -- there was always some
part of me that has felt inferior and that I had missed out
on some fundamentals.
I think for most programmers, including me, you don't need
to know these things, especially not their implementation in
Scheme.
Things like (delay) were interesting concepts to introduce,
but when you realise that's just futures (or Python's await)
you can see that in the last few years mainstream languages
actually have been catching up with Lisp. Maybe not in such
a graceful, homoiconic way, but still in an actually useful
way.
I understand anyone reading this and thinking that I have
missed "the point" -- SICP is not supposed to be a practical
book. That's fine; I know that. But I don't think that even
the impractical parts are of interest to me any more.
These mental tools don't help me solve the problems I have,
either personally or professionally, with computers. I am
slowly realising that I actually want to solve real problems
that I have, and not just learn more abstract ways to do the
same things.
This lesson has taken basically two decades. Infact, I think
I might never have learned it if I hadn't actually climbed
up to the point where "the summit" was near, and realised I
don't want to go there.