fork download
zipn(List) ->
        zipn([],List).

zipn(Acc,[]) ->
        lists:map(fun lists:reverse/1,Acc);
zipn([],[A|Rest]) ->
        AccStart = [[V] || V<-A],
        zipn(AccStart,Rest);
zipn(Acc,[A|Rest]) ->
        NewAcc = zipn_helper(Acc,A),
        zipn(NewAcc,Rest).

zipn_helper(Acc,A) ->
        zipn_helper([],Acc,A).

zipn_helper(Acc,[],[]) ->
        lists:reverse(Acc);
zipn_helper(Acc,[AccHd|AccRest],[VHd|VRest]) ->
        NewAccHd = [VHd|AccHd],
        NewAcc = [NewAccHd|Acc],
        zipn_helper(NewAcc,AccRest,VRest).
Not running #stdin #stdout 0s 0KB
stdin
Standard input is empty
stdout

Standard output is empty