Real world knowledge vs first principles knowledge - Haskell

Welcome to the Functional Programming Zulip Chat Archive. You can join the chat here.


I think there is a values difference in the Haskell community between:

  • Real World Knowledge
  • First Principles Knowledge

Maybe I'm tipping my hand and biases by naming the second, but I'm open to more fitting names :wink:

"Real world knowledge" advocates might see "first principles knowledge" and dismiss it as "pure theory and not applicable to the real world". When I started as a Haskeller, I was unabashedly in the "real world knowledge" camp but after exposure to things like denotational design and ironically real world experience I became more wary of it.

"First principle knowledge" advocates might see "real world knowledge" and call it "unprincipled knowledge" that isn't worth making decisions based upon.

One great case of this at play is a question I asked from the perspective of someone considering "real world knowledge" important and got a response from someone who thought that real world knowledge wasn't valuable in this case:

"It runs in the real world" is a weak argument in favor of anything.

What do yall think in general? This was specifically a reddit comment about Hierarchical Free Moanads: Mostly Pointless, but I suspect thoughts that come about attempting to answer this more generally will be most valuable.

I feel like if we can nail down the differences in the community here, as objective as possible pros/cons we might be able to resolve some of the recurring threads that many (including myself even though I post them) find unsatisfying or even bothersome after a while.

46 votes and 15 comments so far on Reddit
Torsten Schmits

I would say that "real world knowledge" is such a subjective phrase that it's pointless to argue


Torsten Schmits said:

I would say that "real world knowledge" is such a subjective phrase that it's pointless to argue

I'm definitely empathetic to that but it seems we'll be forced to reckon with it over and over so we might as well find some good approximation?