Erlang: как реализовать понимание списка Erlang?

Реализуйте понимание списков Erlang, которое берет два элемента из списка и создает новый список списков.

У меня есть этот код

pair([], Acc) -> lists:reverse(Acc);

pair(L, Acc0) -> 
    [ A, B | T ] = L,
    Acc = [ [A, B] | Acc0 ],
    pair(T, Acc).

, который отлично работает:

7> l:pair(lists:seq(1,6), []).  
[[1,2],[3,4],[5,6]]

но похоже, что я должен быть в состоянии реализовать это как понимание списка. Мой Erlang-fu слишком слаб, чтобы придумать это.

Есть предложения?

Спасибо

6
задан EL Yusubov 22 June 2012 в 00:56
поделиться