One silly hardware project a friend and I came up with would be to design tag-checking hardware for some old microprocessor. It'd be marginally more deserving of the title of "Lisp machine" or "Smalltalk machine" but still unbelievably cursed, and we'd still need an efficient way to set up the tag checks for it to pay off.
"Would tag hardware have saved her?" One wonders.
The applied-langua.ge RSS feed!!!!!
People ask for this even though we publish approximately once in every never, and the outrage these days would seem to suffice as a notification. But here it is:
the Alan Kay "metamedium" idea that runs through this article is powerful; reframing the discussion around the concept of "what do I do with it" rather than "how old of a computer can I do my work on." more like the @stevelord "heirloom computer," less like an old DOS laptop that is still useful.
I had read some Willy Gilly to pass time and Willy makes a relatable statement on the Left:
"so long as there's the dominant hegemonic institutional enemy (at least in one's local context) all other ideologies on the periphery are valid coalition partners"
We got in a lot of trouble for saying that something was just bad, but the people doing it were "trying things" and weren't obviously the baddies, so it should be condoned. That statement explains many situations I've had, really.
one-more-re-nightmare turned two years old near the start of the month and I forgot ):
Around this time in 2020, I got bored during holidays and decided to practise between university courses on automata. After transferring to another university and not succeeding in getting credit for the course, I start a similar course next month; I wonder how I'll go.
A similar "dichotomy" exists between, say, systems optimising for simple "small" implementations, and the latter optimising for simple(r than they could be) "large" implementations. People think that implementations are either "small" or "large", seemingly, but we approached something in the middle with the proposed instruction-at-a-time dynamic translator. A macro assembler suffices to implement translation, and that's certainly not a very complex compiler.
One random and somewhat relevant thought is that, if we're going to demarcate "serious"/"useful" and "fun"/"playful" projects, we're kinda fucked; because the "productive" (at loss of a better word) things are not intended to be fun, and the fun things are not intended to be "productive".
I do most of what I do because it's fun (notable exceptions include register allocation), and because it's something I want.
Must be time to pull out ye olde https://www.youtube.com/watch?v=gdjQaHBmr98
I spent years designing a simple language and platform for replicated and modular programs. Then I wrote a bunch of other crap by myself. I don't believe in a "human scale" of anything, but it's beyond me why those wouldn't count; yet someone claimed I hadn't ever designed any software fitting that scale. At least, I don't think I could not write "human scale" software with what I have (and have not). Boggle.
Sometimes I make the computer do things
Apparently works on distributed systems, compilers, garbage collection and music.