>763
トップダウンでライブラリや関数を作る場合はあなたの仰るとおりだと思う.
一方でローカルな関数/一時的な関数を一般化してライブラリに収めた,という場合
諸般の事情でオリジナルの名前が残ったとしてもおかしくない.いつか適切な名前に
改められるべきだとは思うけども.
経緯を知らない状況で「合理的な理由がある」と決め付けることは私にはできない.

>762
Control.Monad.join は要素の重複をそのまま残すので,いわゆる集合の join にはならないと思う.