++++ 7/24/2024 ++++ I have been looking into collapseOS, but instead of going too far with it at present, my attention has been brought to its use of the Forth programming language. I have written before about how I seek a kind of holy minimalism when it comes to computing -- I seek it in many things, but I think I've only written about how it applies to computing on my phlog. And when it comes to Forth, I think that sort of thing is my bag, baby. It's hard to imagine a more simple syntax for a language; you write a word that is in its dictionary and it does it... That's it. If you want it to be able to do something else, you write your own custom word... And that's really about it, unless we want to talk about how it enforces explicit use of a Last-in-First-Out stack... which we aren't going to today (ever?). For example, I installed gnu's version of Forth, called gforth, and to exit the interpreter loop, you use the built in word "bye." Well, I don't want to have to type three whole letters to exit -- what horrendous, unnecessary bloat! -- so instead I have made a "q" a custom word to exit: : q bye ; The colon is a reserved word saying a definition is coming. Then you put in the word you are defining, then whatever the word is going to do, ending your definition with a semicolon. (You have to have the space in front of the semi-colon, which is one of those super-noob mistakes I made the first hour or so I was playing with the language. Gforth also makes it really easy type shell commands with the build word "system." And so I defined a word that let's me clear the screen, as seeing too many lines at a time is a kind of clutter I do not like: : cl s" clear" system ; Nice. But don't I want my screen cleared when I get back to Bash prompt? Sure I do, so why don't I redefine "q" so it clears the screen and then exits? : q cl bye ; I also have the custom word "my" which opens the file of custom words, so I can paste in ones that I want to add to the repertoire. : my s" vim customDictionary.fs" system ; Okay, fine, you got me... I use nano. I just wanted more of you to be nodding your head at this point... I recommend the entire article "Why Forth?" http://collapseos.org/forth.html as well as everything else you can click through on the site, but this quote speaks what I see : | The base design of Forth is entirely built around a | *primal* simplicity. Even better, the path of least | resistance generally guides you towards simplicity. When | a word definition becomes too big and complicated, it | generally prompts you to reorganize your code toward a | simpler solution that might not have occurred to you in | another language. So, if you're tired of imposed complexity and bloat, perhaps it's time to say "q" to all that and embrace the elegant minimalism of Forth. = This work is hereby in the public domain. Do what you want with it.