|
|
|
|
|
by wenc
3146 days ago
|
|
> learning Category Theory There is a level of abstraction which for most people is the wrong end of the stick to start from. Category theory is one of them. (and I'm a big fan of category theory and Haskell). Category theory may occasionally lead to elegant, orthogonal and consistent solutions, especially if you are building new abstract tooling (LINQ in C# is a good example). It gives you tools to reason about structure. However in most situations, it doesn't give you anything you can directly use. Most of them time it serves to clarify and enlighten rather than generate. Categorical thinking [0] may be more useful than the actual theory. If you seek to apply category theory without first getting your hands dirty with conventional "inefficient" programming, you will end up with abstruse solutions that are potentially overly complicated and unmaintainable. Applying theory without the requisite real-world experience (to temper the tendency toward heavy abstraction) is a problem of youth. The world is not full of highly-intelligent people who can work with highly abstract code. One needs to learn to work with the inelegance in the real world and with other people in the system. A larger coherent system, though weak in parts, may produce a better result than a few bright people. [0] https://www.johndcook.com/blog/applied-category-theory/ |
|