для первоначального понимания работы мапа нужно просто знать, что это так работает, это нормально при обучении
к вопросу о хороших книгах (и первых) в Haskell from first principles разбирается, как самому написать foldr и многие другие функции из стандартной либы, разбирается как именно работает map/reduce и т.д.
математика - лямбда-исчисление там идёт с самого начала и тоже объясняется весьма понятно, хотя лекции Москвина лишними явно не будут