2 ms·
author here, the way I see it is that nothing about my software per se will change. I do indeed like to write things in a "plain" fashion instead of littering m
by larve 4y ago
author here, the way I see it is that nothing about my software per se will change. I do indeed like to write things in a "plain" fashion instead of littering my code with high-level constructs that only a few people understand.
However, it is "generative" knowledge. Having a good intuition for monads is what allows me to break down a fair amount of the mundane tasks I have to do (say, breaking down and migrating infrastructure configuration) in steps that work and stand the test of time. That's the thing about say, monad. An applied monad just looks utterly trivial, because, really, they are. If they weren't they wouldn't be worth using.
It also allows me to mine the literature or reuse things I've worked out in the past, for example exploiting monoidal structure for optimizing computation by leveraging associativity, for example.
- larve 4y agoAlso, this is very much what works for me. I love to think in "structure" and patterns, and category theory diagrams and the way concepts are formulated brings me "joy", if that makes sense. It resonates with my cognition in the way say, common lisp, does, and that makes it quite fun and enjoyable. Does it for everybody? Most certainly not.
- charcircuit 4y ago>It also allows me to mine the literature or reuse things I've worked out in the past, for example exploiting monoidal structure for optimizing computation by leveraging associativity, for example. This is an algebraic concept and it is possible to learn this idea directly in a software engineering context than a mathematical one.