Hacker News new | past | comments | ask | show | jobs | submit login

I worked with Haskell for awhile but never had it fully 'click'. That being said, I think that once someone is fully comfortable with algebraic data types, category theory, and functional programming, most of these extensions and fancy constructs become pretty shallow and easy to understand.

(Would appreciate if any bonafide haskellers care to comment)




Cat theory isn’t needed at all. It just gives you another smell test for recognizing you maybe designed an api nicely. (Aka: oh cool, my api code has some nice mathematical / logical property, maybe it’s not just mud on the wall)


Agree. You don’t need to know category theory to use Haskell or the libraries.

Know category theory or being aware of it just gives you a deeper understanding of the way things work.

I don’t know category theory but aware of it. The way I look at it is c style languages you have design patterns. These are loosely designed patterns with no formal definitions. That makes it hard to reason about or test things.

In category theory you have mathematical laws. Laws are far stronger than a loosely typed designed patterns so using these laws it’s far easier to reason about code.


Also piping in to say you don't need to understand category theory to successfully write production Haskell. It's interesting to learn and does help solidify understanding of some concepts, but by no means required.

Highly agree that most common extensions are pretty shallow and easy to understand. The tricky ones are usually enabled because some library told you to, or you've genuinely leveled up and recognize where to use them yourself.




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: