I keep bouncing off the Scheme language

ingve1 pts0 comments

I keep bouncing off the Scheme language | Structure and Interpretation of Computer Programmers

Skip to content

Structure and Interpretation of Computer Programmers

From programmer to software engineer.

Home<br>Blog

Contact

Post Archives

Privacy Statement

Software Portfolio

&larr; On industrial relations

I keep bouncing off the Scheme language

Posted on 2026-05-22 by Graham

I have a huge appreciation for the Scheme programming language. I just seem to be unable to get it to stick in my head. This seems like a huge revelation for someone who named their blog after the Scheme textbook, but there it is. This post is the public admission I need to make, to keep me accountable for trying again. And again.

One problem is that I’m an inconsistent LISPer. The first software I ever got paid for was an Emacs major mode for the GLE plotting language, which didn’t do much beyond syntax highlighting. But I didn’t really get deeply into Emacs customization or automation, so I still have to look at the manual or my outdated copy of Writing GNU Emacs Extensions whenever I want to do anything.

I’m OK at reading Scheme. During my investigations of AI coding assistants for the project that became Chiron Codex, I created a Smalltalk-like live environment with a module browser for the Racket dialect. Obviously an LLM generated the code, but I felt comfortable following along and understood what it was doing, reading and Trusting the Tests. And when I look at Scheme that other people have written, I think I get what’s going on.

My difficulty is with thinking the way that lets me write Scheme. I have the ALGOL neurotype. When I think about a programming problem, I think in terms of the sequence of instructions I need the computer to do, and the memory locations that can hold the information the computer needs to track. After decades of working with OOP, I can quickly identify smaller computers that run smaller programs to make it easier, but only because I’ve got experience using the Simula-derived, neurologically ALGOL-based OOP strands like Java and Smalltalk-80.

This is, unfortunately, a failure that breeds failure. I’ve started two web app projects recently, including SE100, the reading list for the SICPers podcast. In each case, I’ve thought about using GNU Artanis but ultimately fallen back into my ALGOL mindset (the SE100 catalog uses the Go programming language, for example).

I think Scheme makes for some powerful software that’s pleasant to read: when I use Linux, I use GNU Guix and GNU Shepherd. I want to contribute to that ecosystem, I just have to get over the hump that I know the other, more complex way better, and be willing to play junior developer with some unfamiliar tools. This is my admission. Check back in a while to hold me accountable to this.

About Graham

I make it faster and easier for you to create high-quality code.

View all posts by Graham &rarr;

This entry was posted in GNU, tool-support. Bookmark the permalink.

&larr; On industrial relations

Leave a Reply<br>Your email address will not be published. Required fields are marked *<br>Comment *<br>Name *

Email *

Website

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Chiron Codex: helping software engineers become centaurs.

OOP the Easy Way<br>Object-Oriented Programming the Easy Way: a manifesto for reclaiming OOP from three decades of confusion and needless complexity.

APPropriate Behaviour<br>The book about all the things software writers do that aren't writing software.

APPosite Concerns<br>A collection of essays on being a programmer, on doing programming, and on thinking about programmers.

Support This Site<br>If you like what I do please support me on Ko-fi

FSF

Structure and Interpretation of Computer Programmers

Proudly powered by WordPress.

scheme software language computer programming keep

Related Articles