Замыкания и понимание списков в Haskell

В данный момент я играю с Haskell и наткнулся на возможность понимания списка. Естественно, я бы использовал замыкание, чтобы делать такие вещи:

Prelude> [x|x<-[1..7],x>4] -- list comprehension
[5,6,7]
Prelude> filter (\x->x>4) [1..7] -- closure
[5,6,7]

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

6
задан hammar 4 October 2011 в 18:01
поделиться