4 ms·
in the functional programming community I find an obsession with these two things 1. what counts as functional programming (and more specifically "why lang X i
by metaphorm 10y ago
in the functional programming community I find an obsession with these two things
1. what counts as functional programming (and more specifically "why lang X is not really functional")
2. inventing new jargon, particularly in cases where existing terminology is mostly adequate, but some hair-splitting detail is not properly covered by a word already in use. this tendency might be a natural consequence of spending all day on macro expansions.
- svachalek 10y agoTL;DR what mathematicians call functions, programmers call pure functions, and nobody told the author. It's like someone saying to a scientist, "that's just a theory, man."
- reikonomusha 10y agoThe author used, more or less, a mathematician's definition.
- pron 10y ago> what mathematicians call functions, programmers call pure functions Even that's not precise. What mathematicians call computable functions, programmers call total, pure functions, and even then only as an approximation.
- stcredzero 10y ago1. what counts as Funny, but OO people did something like that too. 2. inventing new jargon, particularly in cases where existing terminology is mostly adequate Many programmers are guilty of this, particularly if they are young. Once you've been around a few decades, you start seeing this pattern.
- theophrastus 10y agoAs regards your "2." I have often thought that Randall Munroe's approach with "Thing Explainer"[1] would serve (for the rest of us) a number of computer science theory dominated software areas exceedingly well. (how about "monad" using Munroe's strict 1000 word list?[2]) [1] https://xkcd.com/thing-explainer/ https://xkcd.com/thing-explainer/ [2] http://splasho.com/upgoer5/phpspellcheck/dictionaries/1000.dicin http://splasho.com/upgoer5/phpspellcheck/dictionaries/1000.d...
- acchow 10y agoMonads aren't actually complicated tho, they're just abstracted from reality a bit (unlike, say, object-oriented inheritance). It's much more useful to actually write a few monads yourself than read articles about them.
- parenthephobia 10y agoThing Explainer is good because it is fun to read words which explain a thing that you already mostly understand in a way that you would not usually see. It can also help you see things from a point of view that you wouldn't usually have. However, when used to write about things that you don't already know about, it will probably not make it easier to understand, and may just make it less clear what is being written about.
- eikenberry 10y ago#2 is common practice in academic papers. I think this is bleed-over from the fact that many of the bigger functional languages come from academia.
- chriswarbo 10y ago> in the functional programming community I find an obsession with... what counts as functional programming (and more specifically "why lang X is not really functional") It always disappoints me when I read such things; it turns FP into a moving goalpost or a mirage. If you really like FP and want it to be more widely adopted, an approach of encouragement, "steps in the right direction", etc. will do more good than "holier than thou" scorn. I've tried to follow this attitude when e.g. discussing on HN and answering on Stack Overflow; I wrote up some of my longer FP descriptions into a blog post at http://chriswarbo.net/blog/2015-01-18-learning_functional_programming.html http://chriswarbo.net/blog/2015-01-18-learning_functional_pr...