Andrey Listopadov

I’m feeling ranty this week for some reason. Today will be no different and I’ll post another rant on the software world but not about programming. Instead, I want to tip into the consumer application world, and shit on the current state of music players on GNU/Linux specifically, although the situation is as bad as on other platforms IMO.
Tree-sitter became more widespread and Emacs took notice and included a bunch of <lang>-ts-mode as alternatives to <lang>-mode into the core. This is good news and a welcome change, but I have some concerns about the approach. When I first saw the Tree-sitter talk by Max Brunsfeld I was concerned that the language highlighting “fix” they’re talking about is too much.
I don’t get it - it’s the simplest way to enable dark mode for your website that works across all platforms. It works on Linux, Android, MacOS, iOS, and maybe even on Windows (I didn’t test it, I have no Windows). I see websites that either use JS to do that or do no dark mode at all.
In the last post on the subject I mentioned: …And yeah, I felt burned up a lot, and considered skipping a month maybe… So, yeah. I left the jam. And I’m stopping my gamedev marathon as well. Realizing that it was a struggle rather than a self-motivation attempt helped to make the decision.
…if you’re an Emacs user, that is. You know, it’s funny, because people have opinions on why you don’t need a terminal on entirely different ends of a spectrum. It’s like that IQ chart meme: Figure 1: *That’s Visual Studio on the left, not VS Code
You might be wondering why there were no posts on the game development marathon I’ve been doing. Maybe you’d thought that I gave up after the admittedly underwhelming game3 having no actual game just some basic movement. And yeah, I felt burned up a lot, and considered skipping a month maybe - but then this happened.
Not to be confused with a programming language. In this post, I would like to cover what features I think a dynamic language environment should have. Or to rephrase that, what would the environment probably have if I were to design it.
In the previous post on the subject I’ve described how one can create a custom compilation mode for any language. In the Dynamically extracting filenames from compiler output section I’m talking about various issues with how Clojure reports problem locations. The main problem is when the problem is inside of a dependency, and be it your own library, or a third-party one it’s equally tedious to go and look into it because the dependency usually is a jar file somewhere in the ~/.
I gave myself 1 extra day on this game because in total I was only able to work on this game for 5 days, two of which were on the train. So this game is now done, although I couldn’t make any sounds for it.
Early on in my career, when I saw a function that returns an anonymous function, I felt a weird mix of emotions. It was just a weird thing to do, especially when you’re coming from C, where there are no anonymous functions. Such concepts as lambdas in C++ were hard to grasp, and I’m thankful that instead of continuing to hit my head against the C++ wall I picked Scheme, and it helped me understand many core concepts, such as higher-order functions that we’ll be mainly talking about in this post.
Newer Page 1 of 9 Older