It is rather funny. When we are young kids, we learn weird symbols like
A B C a b c 1 2 3
which we accept after a while.
Then we get to learn more complex symbols like
! ? + - /
and that takes some time to get used to, but eventually, that works too.
But Functor, Monoid or Monad, that we cannot accept anymore. Why, because these are not intuitive? Are the symbols above "intuitive"?
When I started learning Haskell I also found it insane that strange terminology was used everywhere... But every time I try to find a better name, the name is too specific for the situation at hand. Just like Appendable is a good name for specific instances of Monoid
In F# they renamed Monads to Workflows for the same reason. I find this just as confusing since a Monad has nothing to do with "work" and maybe a little bit with a single threaded "flow"... I would have hoped that we could all stick to the same terminology that was invented a long time ago...
Since Haskell is mainly for computer scientists, changing all of this to make it more accessible to newcomers might lead to the mistake: "if you try to please the whole world, you please nobody".
I mainly think the problem is not the name, but the lack of many tiny examples demonstrating typical use cases for each concept.
On Thu, Jan 15, 2009 at 7:27 PM, Lennart Augustsson
<lennart@augustsson.net> wrote:
That's very true. But programming is one where mathematical precision
is needed, even if you want to call it something else.
On Thu, Jan 15, 2009 at 6:04 PM, Paul Moore <
p.f.moore@gmail.com> wrote:
>
> Mathematical precision isn't appropriate in all disciplines.
>