4 ms·
There's something about these kinds of threads that seems somewhat snobbish and tribalist. There was a similar rant a few weeks ago over whether your 'FRP' is
by cromwellian 10y ago
There's something about these kinds of threads that seems somewhat snobbish and tribalist. There was a similar rant a few weeks ago over whether your 'FRP' is really 'FRP' (https://medium.com/@andrestaltz/why-i-cannot-say-frp-but-i-just-did-d5ffaa23973b#.7ht5m8am1 https://medium.com/@andrestaltz/why-i-cannot-say-frp-but-i-j...)
I think we can all agree that there's a certain beauty and elegance to completely functionally pure programs. CycleJS for example, really pleases me compared to the complexity of React.
However, like everything in life, the real world is messy and hard to squeeze into binary categories. I can't forsee any large scale program that adheres to such constraints without bending over backwards in weird contortions to meet the limitations imposed, to the extent that such code may even be harder to reason about than mutative code.
I think practical languages 'win' by being 'worse', by compromising and allowing the developer to shoot themselves in the foot a little.
- willtim 10y agoHaskell is absolutely capable of mutation, it's just controlled and tracked. IMHO, immutability is simply a saner default for a high-level language. I think languages "win" due to socio-economic reasons, not technical ones.