4 ms·
>No, you're conflating higher-order functions with closures Well, if you are actually doing the real hardcore FP™, and not just the lame pretentious PF, then y
by runald 6y ago
>No, you're conflating higher-order functions with closures
Well, if you are actually doing the real hardcore FP™, and not just the lame pretentious PF, then yes higher-order functions will indeed very much make heavy use of closures. Did you miss the part where I gave haskell as an example? And note that I didn't say that closures and higher-order functions are the same thing.
> Higher-order functions that use closures make use of closures. Higher-order functions that don't use closures do not
How are these tautologies even an argument? This does not say anything meaningful, like saying wet water is wet. Don't worry, I'm not even trying to keep a straight face while reading what all you have said so far.
> I don't think there is even a purpose to higher-order functions without closures.
Heh, I did qualify my statement with "I don't think" since I didn't really give that much though on that one.
But okay, I admit that statement is dumb and invalid since the usual map, filter, reduce functions are good examples where higher-order functions is not a closure. But more often than not, you really do need to use closures to do anything beyond simple cases like map(array, x => x*x).
My overall point still holds. I'm still in a very good position to challenge your dogmatic beliefs that: heavy-usage of closures is pseudofunctional and unfunctional.
- cxr 6y ago> How are these tautologies even an argument? They're not, and that was exactly the point of my comment: it's a circular argument that you have to take responsibility for, not me. You seem to have missed that—it's your nonsense claims that are in focus when the tautology is being spelled out. Higher-order functions and closures are different things. > Well, if you are actually doing the real hardcore FP™, and not just the lame pretentious PF I wouldn't call the pseudo-functional style "hardcore"—any more than OO is hardcore, given that they're equivalent. It's frequently portrayed as the naive/easy way out. Actual FP, on the other hand, is hardcore. (And pretentious—which is an odd attempt to try to stir me up; do you think I'm an advocate of FP or something? I suggest re-reading.) > But more often than not, you really do need to use closures to do anything Yes, which is why I'm not an FP advocate. I was very clear in my original comment. The pseudo-functional style is a preference for how to write programs, and therefore immediately defensible as valid. What's not defensible, though, is equivocating on the meaning of "function" while simultaneously trying to lump the pseudo-functional style in with FP. The moment one starts making heavy use of closures and carrying around state is the moment one forfeits the right to be smug about how unclean OO is, given the equivalence of objects and closures and given that one is no longer actually practicing FP. > I'm still in a very good position to challenge your dogmatic beliefs that: heavy-usage of closures is pseudofunctional and unfunctional No, you're not. It's unfunctional by definition.
- runald 6y agoIt sure is easy moving the goalposts around when you have no grounds to base on. Please, please you have said this much and haven't still even once defined what true functional programming™ is? > It's unfunctional by definition. There you go, more self-fulfilling tautologies. And for some magical reason, it's me that are making nonsense claims? How is "higher-order functions make heavy use of closures" a nonsense claim? I have provided a very clear and direct counter-example that falsifies your core argument. On the other hand, you have provided zero actual rebuttals. In case it isn't clear, calling mine "nonsense, circular and tautological" and yours "by definition" doesn't count as an argument. > The pseudo-functional style is a preference for how to write programs, and therefore immediately defensible as valid Is the word style even relevant here? You can call it style, paradigm, or computational model, it doesn't change your point. > What's not defensible, though, is equivocating on the meaning of "function" while simultaneously trying to lump the pseudo-functional style in with FP. Ugh, I'm guessing your definition of "function" is a special amorphous one that changes meaning to conveniently support your claims. > The moment one starts making heavy use of closures and carrying around state is the moment one forfeits the right to be smug about how unclean OO is, given the equivalence of objects and closures and given that one is no longer actually practicing FP. No, repeating your statements don't make them true. Once again, see my original counter-example with haskell. If you insist in ignoring it, then fine with me. I'm done here.
- cxr 6y ago> It sure is easy moving the goalposts around If I've moved the goalposts, you should be able to show where it happened. So do—point to it or fuck off. As for the rest of your comment and being "done", that's fine. There's zero chance that I'm going to waste my time on a point-by-point rebuttal for anyone who's acting in this much bad faith, ignoring the points I've already made, and trying to pawn off the flaws in your arguments as mine.