I just discovered this novel #emacs #emacslisp #elisp feature:
As part of their definitions, functions can be declared as being pure and side-effect free. This shows up in *Help* buffers and is also used by the compiler for optimisation. These types of declarations are associated with the symbol as opposed to the function value(https://www.gnu.org/software/emacs/manual/html_node/elisp/Symbol-Properties.html), just like #clojure metadata(https://clojure.org/reference/metadata).
I know #dlang has a similar feature where functions can be marked as being pure (https://tour.dlang.org/tour/en/gems/functional-programming), but I haven't seen it anywhere else. I suppose #rust immutable references are kind of similar too, although that's stretching it.
Are there any there any other cool or novel features in elisp?
In the physical world, the only real limitation to the newspaper box distribution method is that of convenience; the consumer might not have a box near them, or my not want to be troubled to go out to that box. These concerns go away online, and #RSS really shines at keeping anonymous distribution instead of anything requiring an registration (newsletters, vendor accounts). Identity is costly, even bothering with dummy or burner identities.
wow. Text-browser Nitter is actually quite nice. https://nitter.net/ChrisO_wiki/status/1673963225845493764#m
Ah! Great solution found: the impressive #libredirect plugin, which allows choosing redirects for YouTube and many others! https://addons.mozilla.org/en-US/firefox/addon/libredirect/ #privacy #FireFox #piped #YouTube #twitter #reddit #ManyOthers
Many #piped instances, including the main ones, seem to be hitting a java error that might be a result of being blocked by #YouTube. Fortunately each instance provides "preferences" that list other instances. Swapping them out individually, eventually I found one that still plays videos (for now). https://piped.simpleprivacy.fr/
#MarcAndreessen on #LexFridman podcast points out that the advent of software would have #Marx rolling in his grave, because Marx' ideas were founded in industrial economics while the software boom sees individuals able to convert labor directly into capital. https://lexfridman.com/marc-andreessen/
I have youtube videos I want to listen to when I don't have eyes to spare. YouTube.com does some unholy mobile code that causes it to stop when you turn off your screen, even in your browser. Sometimes this can be bypassed by viewing in Firefox Mobile in desktop mode, but sometimes this just doesn't work. The Piped.video interface not only has no qualms about continuing playing when your screen is off, it offers an audio-only option so, presumably, I'm not streaming high-payload video data! Another win for #piped over the #DefectiveByDesign #YouTube greed.
Just saw on someone on #Reddit using #ChatGPT to answer a user's question — they didn't disclose it but it was painfully obvious.
Very on-brand, as a large portion of Reddit's user base consists of people who are confidently wrong about everything.
Still, I miss the times before #AI, when being wrong at least required some effort.
Have you ever had two keys randomly swap places on your keyboard? Only if your #keyboard is this cool https://orys.us/uN #planck
Twice in two days I've had problems (solutions?) with #css. Once was a #WordPress site we thought was failing to display search results, and we found an errant over-matching `display: hidden` in the style. The other was while implementing a goog autocomplete and I mistook "not loading the data" with "forgot to make usable styles."
I used to listen to #podcasts through Google, then through Spotify, then Spotify Lite, and now I just love listening to them raw through #firefox and the RSS feed (#elfeed on my pc, #feeder on my phone). There are tradeoffs -- can't share as easily, don't have playlists of them, can't cast. But I also don't have things getting paused accidentally by the service or by others on my account (there are no accounts at all!), and I don't need to worry about things tracking/sharing my listening data. At least, not for podcasts. It's the way podcasts were meant to be!
There's yet another "AI will kill us all! It poses a risk of extinction!" letter going around, and I just… Y'all i am just so fucking tired.
CAPITALISM poses risk of extinction (climate change, right the fuck now).
WHITE SUPREMACY poses risk of extinction (genocide, eugenics).
HEGEMONY poses risk of extinction (nuclear FUCKING WAR).
And whatever "risk of extinction" "AI" poses, it poses because it is BUILT FROM THOSE EXTREMELY HUMAN VALUES.
Even if you stopped every "AI" project running, RIGHT THIS SECOND, those values would still kill us. And no matter how long you "pause" your "AI" projects, if you don't address those values? Then when you start your "AI" back up? You'll KEEP BUILDING THOSE SAME VALUES IN.
This is not hard. At this point, as much as it pains me to say it, it's not even novel. And yet you're still not fucking getting it.
I'm so goddam tired.
Excited for this talk on #Clojure performance in an hour. https://www.meetup.com/london-clojurians/events/293273349/?utm_medium=referral&utm_campaign=share-btn_savedevents_share_modal&utm_source=link
It's a beauty of open source #emacs that I thought, "with my three streens and multiple emacs windows per frame, it would be great to blink the modeline which one has received my focus." A short function later and boom; done!
Full Stack Clojure web app engineer