237 karma · joined January 17, 2023
But you're right, we probably misunderstood each other there. You definitely won the argument though :)
It's still crazy to me how people use Viber en masse in a lot of those places. The UX is abysmal and it's full of manipulative ads. Habits are hard to change.
I'm somewhat shocked by this overwhelmingly positive reaction to AI replacing human creativity so I may be overreacting? It just doesn't sit right with me — trading human subtlety for raw efficiency — but to each their own.
Thanks.
I also emphasize with the "louder" thing. Uninteresting things aren't as loud as my thoughts so I have to make an effort to suppress them.
I think it's exactly the same issue as null in Lisp and Lua — you sometimes want to differentiate between null as in "I returned no value", and null as in "I returned the fact that there is no value". Or null vs false vs empty list in the context of Lisp.
This distinction becomes very clear (and sometimes very annoying) when you realize that in Lua, setting a table key to null completely removes it, so there's no way to store the concept of a missing value unless you define a special value (like DBNull). A slot being null literally signifies its absence.
There's so much cool stuff in there.
People say that forth isn't very optimisable for our register machines, but I reckon that you can get pretty good results with some clever stack analysis. It's actually possible to determine arity statically if you don't have multiple-arity words, which are very rare. That allows you to pass arguments by register.
Anyway, I'm not even close to an expert so don't take what I said as facts.