Language Envy
Every programming language community seems to have a subset of itself that is just overly concerned with envy for another language, whether it's the features or parts of the ecosystem. This isn't necessarily a bad thing, it's actually good when a good idea gets support in multiple languages. It's just interesting how narrow and repetitive the envy can be. (In some cases even incestuous -- JS framework envy leading to more and more JS frameworks.)When Rails was hot, there was a lot of Rails envy (less Ruby envy). While I preferred Flask, Django wasn't bad, and made good effort at replicating the Rails experience. There were many PHP frameworks as well. In the Common Lisp world, there's been a bit of envy, and it's led to a few frameworks, but they're really not anywhere near supported as Rails or its imitators in other languages. What happens, given that CL is a small community, is that every so often someone new will get Rails envy, and instead of building on top of one of the existing frameworks, they'll make their own, and it too will not actually be where Rails is.
I've been seeing a lot of C envy in the Lisp world recently. I've even participated in some of it myself over the years... I mean, it's really cool that CL is both a super high and super low level language, that we can work with whatever high level abstractions and at the same time drop to machine code if needed. With SBCL, and sometimes a little elbow grease, we can have our cake and eat it too with the most dynamic language that nevertheless has amazing C (or better than C) speeds for things.
See Full Post and Comments
Getting over someone sucks
It's not my first time, actually it's nothing new, but that doesn't make it any easier to get through
It's a pollutant of the mind. Frequent and daily thoughts about her and how I must be a terrible person, I must have done various missteps, some I can plausibly point to, some I have no idea about so always wondering whether such and such was a mistake, but if such and such other thing was then that's kind of unfair anyway to hate me for because in most contexts including that one it's fine but sure what the hell I'll take responsibility for them anyway. Self-blame is a game I don't mind even if it doesn't feel good.
See Full Post and Comments
Hard labor
I had a dumb argument recently with my dad's wife, it was around various aspects of illegal alien workers. One of the retorts against me was something like "You have no idea how hard they work", to which my knee-jerk reply was something like "I've done hard labor" and her reply was a "When have you ever? *laughs*".It's mostly fair in the sense of criticism against me that, especially as an adult, I live a soft life. (I know very well she thinks quite poorly of me in multiple ways, most of them unfair and ignorant, some of them fair.) But that's not really valid as an argument for anything. I readily conceded that no, I haven't done hard labor in any full time capacity. Or even part time job capacity. I've not harvested sugar cane or cotton or worked on a farm for money or on a crabbing ship or in a coal mine. I can only imagine how difficult it must be through others' reports and however much I can extrapolate from my own experiences.
Nevertheless I think some of those experiences count as hard labor. But perhaps it's just sparkling labor, and true hard labor can only be experienced if you're forced to work in near slave conditions for a long duration. (The slavery aspect is part of my arguments around the issue of illegal aliens, but it is also admittedly rhetorically over the top, but I don't think by that much. As an imported underclass they lack so many protections and opportunities that legal immigrants and citizens enjoy, and are frequently exploited on that basis, so for many it's not that much higher than slavery. Some slave owners treated their slaves well, too.)
See Full Post and Comments
The futility of one million words
I've had a word count tracker for this site for quite some time. It's nothing special, just counts every "word" in posts and in comments by me, defining word as a string of symbols not including a space. A bit of logic filters out quote blocks or code blocks. (I had previously forgotten to filter code blocks, but duplicated the logic for span blocks so that should be good now...) Some quotes/code blocks probably should be counted (I think there might be some cringe poetry in pre tags...) but whatever, accurate enough.As of today, ignoring this post, there are 482,117 words.
In 2021 I decided to count how many words would be added if I added up my HN comments, which is the other place I write the most at. That gave me another 400,000+ words, naively counted with wc -w, essentially the same logic as for my blog. Though some of those words are also quotes from others, or code, and I didn't try filtering them out. And every comment is separated by a bunch of dashes and wc counts those as words too, adding one extra word per post. In other words, it's an overestimate.
See Full Post and Comments
Briefly revisiting Land of Lisp
A couple months ago I was surprised to read in a couple places that the book Land of Lisp was "much maligned". This was surprising because it has high reviews on Amazon and GoodReads, and I personally liked it overall too. I remember getting it not long after it came out, Christmas of 2010, but I didn't really make time to read it much. I was busy with college and my job, and at some point I got more hooked on Clojure and didn't want to look at things through the "old and crufty" CL lens. I wish I kept track better of my progress milestones. I remember going through a section of it years later with my cat occasionally resting on a page. For various outside the book reasons though I just didn't get around to making the final push to finish it until 2018.I had one major critique, which was the author seems to have a stylistic preference that I don't share. Namely, his Lisp code is more "Scheme-like" than Common Lisp-like, and more emphasizes functional programming (mostly in the closures + higher order functions sense, not so much the immutability sense, and ignores the static typing sense). To quote from my own thoughts after reading that I still agree with:
The main critique I'd offer would be that perhaps functional style was emphasized too much, much of the code felt like what I'd expect to see if a Scheme or Clojure programmer was forced to write in Common Lisp. (So it didn't actually feel "sticky" to the brain and writing Lisp afterwards I still look basic things up.) Specifically, the over-frequent use of inner functions via 'labels for closure benefits rather than separate helper functions with a couple extra params (or generic methods on objects...), recursion (and often not tail-recursion) instead of various looping facilities, and raw car/cdr and their (admittedly useful) mutant forms rather than some structs or CLOS objects to help hide that. I just can't remember that the caddr of our "data structure" is always some particular thing, I'd like a get-thing that does the caadr/caddr/whatdr.
See Full Post and Comments
You might not need ECS
So around May of 2024, I finally got around to reading this article on lisp gamedev with ECS. It's very good and explains things really well. The author created a nice ECS system and if it fits your development style, by all means, use it and let's have more Lisp games!However, I've been fairly skeptical of the ECS idea since I first came across it however long ago. Now, to be fair I'm just a nobody with no commercially shipped games and only a few relations with people who are in or have been in the industry, but I'm not the only one who is skeptical. Check out this short article from the creator of Godot explaining why Godot isn't ECS-based.
To grossly simplify that post, and arguments made by others elsewhere, the reasons for being skeptical about ECS mostly boil down to two things:
See Full Post and Comments
Hammock bye-bye
According to Amazon, I purchased my first hammock in October 2013. I've been sleeping in one since, trying out a few different types over the years or just replacing one as it wears out and gets a rip.I've sort of wanted and claimed to want my next "bed" to be a waterbed, but that should happen only after I move. Plus I'm renting and it might technically be forbidden in the contract, I don't remember...
But last month, I purchased a made-in-Japan Japanese style futon, and a small raised all-wood and slats bedframe to raise it on (about 12 inches) instead of on the floor directly. It's a twin XL for the extra length as I'm tall.
See Full Post and Comments
Recent Posts
2025-08-18
2025-08-16
2025-07-31
2025-07-19
2025-07-07