Improved Means for Achieving Deteriorated Ends
Projects
I've worked on many projects over the years. My resume talks about the professional ones.
Most of my personal work has been in Common Lisp, simply because I find the language a very comfy environment to program in. I'm also very interested in source code as a way to transmit knowledge. Some of my projects exhibit that interest better than others.
Site Generators
Nintendo Emulators
Readable Programs
- Advent of Code - Paused
- cl-6502 - Finished
Imagined Future Work
Well, I don't know. But there are lots of things I've thought about. I'm sure there are a dozen things I'm forgetting. (And Collards is certainly an ongoing project as I keep working on this site.)
These days I'm as excited by non-technical creative endeavours as hacker-y ones so there is definitely no guarantee I spend meaningful quantities of time pursuing any of this.
- cl-miniadapton: Build this as a lisp library. Incremental computation seems like a useful thing to have around and I'm impressed by how small a naive implementation can be based on this paper.
- Finish Clones: This means a number of things. One is fixing some scrolling and graphics bugs. Another is getting the MMC1 mapper working and, more significantly, audio support. But I also could just spend some time documenting what I have and what I learned last go round. Even with no new behavior that would be time well spent.
- General education: There are a bunch of books I'd like to work through. Crafting Interpreters is definitely noteworthy but I'd also love to work through books like Software Design for Flexibility and Building Git. There are a number of other books on lisp and language implementation that intrigue me.
- Pax includes: I have really loved using mgl-pax to generate documentation for my lisp projects. It does a beautiful job interleaving how I write code and documentation for that code. One thing I would like, particularly for things like Advent of Code, is to make it easy to include specific definitions/locatives.