News for hackers. Stuff that matters.
Re:Why I am learning category theory by ogogmad on Thursday December 01, 2022 @07:07AM (#33815199)
Where do adjoint functors occur in CS? They occur in advanced algebra, and they occur in topology, but where else? And indeed, the fact that they preserve limits/colimits may help speed up communication and thinking. But I'm not seeing CS connections here.

https://en.wikipedia.org/wiki/Adjoint_functors

Re:Why I am learning category theory by solomatov on Thursday December 01, 2022 @08:01AM (#33815686)
They literally occur everywhere. Here're a couple more examples, not from what you said:

- Adjoint between integers and real numbers: https://math.stackexchange.com/questions/598075/find-the-lef...

- Adjoint between lattices in abstract interpretation. I.e. abstraction relation between abstract and real interpreter.

Re:Why I am learning category theory by ogogmad on Thursday December 01, 2022 @09:04AM (#33816325)
The first example is trivial, and serves as an illustrative but useless example (which I don't need).

I don't know enough about the second example.

Re:Why I am learning category theory by solomatov on Thursday December 01, 2022 @10:14AM (#33817283)
>The first example is trivial, and serves as an illustrative but useless example (which I don't need).

Yep. Most of the example of adjoints trivial if you know the field of math where they are used. The interesting part is why it happens almost everywhere.

Re:Why I am learning category theory by solomatov on Thursday December 01, 2022 @08:49AM (#33816143)
Another one is a free monoid. With pair of forgetful/free monoid functors. It sounds a bit mathematical but for type T free monoid is a List<T> in a programming language with generics.
Re:Why I am learning category theory by ogogmad on Thursday December 01, 2022 @09:00AM (#33816277)
But why do you need category theory to understand lists and monoids? They're so basic and elementary.
Re:Why I am learning category theory by solomatov on Thursday December 01, 2022 @10:13AM (#33817246)
You don't. You don't need category theory to understand, you need it to unify your understanding.

P.S. I don't believe programmers need to know category theory. However, it's beautiful by itself like many art.