Почему map возвращает объект карты вместо списка в Python 3?

Я заинтересован в пониманииновый языковой дизайн Python 3.x.

Мне нравится, в Python 2.7, функцияmap:

Python 2.7.12
In[2]: map(lambda x: x+1, [1,2,3])
Out[2]: [2, 3, 4]

Однако в Python 3.x все изменилось:

Python 3.5.1
In[2]: map(lambda x: x+1, [1,2,3])
Out[2]: <map at 0x4218390>

Я понимаю, как, но я не мог найти ссылку на почему. Почему языковые дизайнеры сделали такой выбор, что, на мой взгляд, приносит много боли. Было ли это, чтобы разработчики по армрестлингу придерживались списка понимания?

ИМО, список можно естественно представить какФУНКТОРЫ; и мне как-то казалось, что я так думаю:

fmap :: (a -> b) -> f a -> f b