Humans live in a stateful, mutable, world, and build out intuitions about computers on top of that. If I break a stick, I break it.
-
-
Replying to @ncoghlan_dev @hackuador
I *don't* create a new stick that has the property "broken", or even two new shorter sticks, while the original remains unbroken.
1 reply 0 retweets 0 likes -
Replying to @ncoghlan_dev @hackuador
So it isn't your assertions about FP that I take issue with - it's your assertions about how humans learn, and what we find easy.
2 replies 0 retweets 0 likes -
Replying to @ncoghlan_dev
I know what humans do not find easy: reasoning about programs absent types, immutability, pure functions, totality, ADTs, and so on.
1 reply 0 retweets 0 likes -
Replying to @hackuador
We don't need to reason about programs, we just need computers to do what we want with the data we give them (see also: spreadsheets)
2 replies 0 retweets 0 likes -
Replying to @ncoghlan_dev @hackuador
Reasoning about programs as an abstract concept is something *you* want to do, and is especially useful for programs-about-programs.
1 reply 0 retweets 0 likes -
Replying to @ncoghlan_dev @hackuador
But the extra layer of abstraction is entirely *un*helpful when the objective is task automation rather than software development as such
1 reply 0 retweets 0 likes -
Replying to @ncoghlan_dev
I concede there is a tradeoff here: comprehending abstractions -vs- repeating oneself a lot.
1 reply 0 retweets 2 likes -
Replying to @hackuador @ncoghlan_dev
if someone has considered the tradeoff and chooses the latter, that's fine - until there's >1 human involved (which includes "future self")
1 reply 0 retweets 0 likes -
Replying to @hackuador
Exactly, and that's when we start introducing the abstractions: once they're in a position to pay back the additional conceptual complexity.
2 replies 0 retweets 0 likes
Wouldn't you need to first understand the abstractions, to assess them for merit?
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.