Fun Fun Functional
Last week I promised to write a longer post, but unfortunately I had to postpone it. It will definitely happen soon though.
On the plus side I’ve read some good things I want to share with you:
Christian Alfoni wrote about a library called
function-tree, which is an
important part of his Cerebral
project. Cerebral is an alternative state management library to redux or MobX.
Its biggest advantages to me are a much better debugger than redux and
first-class support for async flows. The biggest disadvantage is, that it has no
support for static types yet.
He demonstrates the benefits of using function trees instead of Promises to define async flows.
📃 7 minute read: The second case for function-tree
The benefit of Functional Programming
Kasey Speakman wrote a nice post about learning functional programming by learning Elm. It’s a short read, so I won’t spoil anything. Just one quote, which stood out to me:
A pure function is a contract which a compiler can verify.
This also sums up my problem with TypeScript. Since the compiler doesn’t check if functions are pure, it cannot verify that it does only what the contract (type annotation) allows.
📃 Kasey Speakman about: What is the benefit of Functional Programming?
Gary Bernhardt’s “Programmer’s Compendium” starts to become the best reference for any discussion about programming. After his very objective page about Types, he now wrote a page about structure in software.
📚 From destroyallsoftware’s Programmer Compendium: Software Structure
Have a great week and now stop looking at your smartphone! 🙄