
On Wed, 17 Feb 2016, Bart Massey wrote:
The whole point of importing Data.List (either directly or from the Prelude) is to get functions that work on lists.
Foldable and Traversable generalizations in Data.List are an interim solution, driven by the habit of some programmers to import complete Data.List without qualification and expecting that coinciding names in Data.List and Prelude actually refer to the same function. It would have been better to first warn about these cases, eliminate them and then implement FTP (if at all). Summarized, generalizing list functions in Prelude was a concession to programmers who are too lazy to import from Data.Foldable and Data.Traversable and generalizing functions in Data.List was a concession to programmers who are too lazy to import identifiers explicitly or with qualification from Data.List.