リストから 2 つの要素を取り、リストの新しいリストを作成する 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は弱すぎて思いつきません。
助言がありますか?
ありがとう