Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I'm a fan of FP and I find most of the arguments being made here for FP over OO to be quite unconvincing. You don't need to understand mathematics anymore in FP than you need to in OO. If there is any mathematics in FP it's of the logical variety anyhow - which programmers are already familiar with.


Many programmers have also become blind to all the conceptual baggage needed for conventional OOP programming. What the heck does "public static void main" mean?


Since I don't have any training in Category Theory, I don't know what I don't know. I do know that it seems from the outside of the Ivory Tower that the explanations for FP are far more difficult to understand than the FP itself.

But then again, perhaps if I had studies mathematics, I might have some additional insights into FP that go beyond knowing all of the jargon.


You don't need to understand the Y Combinator to understand recursion. You don't need to understand the theory behind the Lambda Calculus to write anonymous functions. You don't need to understand Gentzen Calculi to write interesting Prolog programs. You don't need to understand the Curry-Howard isomorphism to understand static typing.

These things deepen your understanding certainly, but not understanding them does not in any way limit our ability to write incredible programs.


To add to what you said, you certainly need not understand Category theory in order to be effective as a functional programmer.

Category theory is a very powerful concept. Understanding elements of it will certainly open your mind to the fundamental nature of mathematics. But the essential aspects of it have long been mapped in to other, more accessible, theoretical frameworks. So you can usually get away with never knowing that subject :)




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

Search: