901 karma · joined November 21, 2020
Of course, because the tree has no value, right? As long as you call things you don't care about "externalities" you can trivially prove anything is a positive-sum game.
I feel like we will eventually recognize a variant of Greenspun's Tenth Rule as common wisdom:
> Any sufficiently complicated build system or configuration management system contains an ad hoc, informally-specified, bug-ridden, slow implementation of half of Nix.
(Although to be honest it might make more sense to replace "Nix" with "Guix"...)
There's a long-standing TC39 proposal to add it to JS. It's interesting to read it to see examples of the aforementioned differences.
> The valuable part looks like to be in the effort of understanding, thinking deeply and widely and summarizing.
Which part of this is not conscious effort? You just made a stronger case for such automated systems, especially for people who don't have good memory or abnormal levels of discipline and motivation.
And there's your problem. Regular users do not give a rat's ass about your shoulds. In addition, for example, I've never seen any serious UX bugs in Telegram, and I've seen many in Element. Regular users care waaay more about that than some vague notion of "reliability".
No, you don't. This "principle" is not a law of physics, it's just a rule of thumb that may or may not be wildly off the mark for an arbitrary distribution. Its common usage is like statistics horoscope.
- You didn't have to search for it
- Someone's (Rich Hickey's) opinion
- He has worked with Clojure
- He has worked with another Lisp dialect
Unless you erase your darlings: https://grahamc.com/blog/erase-your-darlings
The second easiest way is to read the comments before the post.
Erlang has been around since what, the 80s? Elixir is "just" Erlang with a different face and extra features.
> restrictive
which is? Functional programming? Immutability?
Interestingly, Erlang is often called a "true" object-oriented language thanks to its actor model. It's incredibly powerful and flexible, pretty much the opposite of restrictive. Just for a simple example, you can inspect, debug and modify your program while it's running.
From your comment it just seems you're not familiar with it.