2 ms·
> The mathematical terminology harkens back to the 1950s, and thus predates APL. History isn't particularly logical sometimes, so there could be two competing
by avmich 6y ago
> The mathematical terminology harkens back to the 1950s, and thus predates APL.
History isn't particularly logical sometimes, so there could be two competing meanings - which didn't seem too competing at the time (as well as later).
Regarding the history of the word, Wikipedia says:
"A mathematical notation for manipulating arrays was developed by Kenneth E. Iverson, starting in 1957 at Harvard University."
"The mathematician Roger Godement was the first to formulate the concept of a monad (dubbing it a "standard construction") in the late 1950s"
Similarly, those terms seem to develop in parallel:
"In 1960, he began work for IBM where he developed this notation with Adin Falkoff and published it in his book A Programming Language in 1962."
"The form defined above using bind, however, was originally described in 1965 by mathematician Heinrich Kleisli in order to prove that any monad could be characterized as an adjunction between two (covariant) functors."
So monad term arguably wasn't an established one in another meaning when Iverson employed it for APL.
Let's check the etymology of words. Two meanings of "monad" (I'm omitting the one from linear algebra) stem from the idea of oneness - in APL it's "one argument", in category theory it's "one category", as the category is being mapped to itself (same as endofunctor, but monad also has extra requirements, so needs another term). So using the same word for similar properties seems logical - again, in the absence of established different meaning.
In practice, monads in APL and FP are sufficiently different so no confusion usually takes place. Similarly FP uses terms like "lens" and "optics", which are hardly confused with earlier introduced physical terms.