Isn’t comparing the lists directly the same?
In elm repl
:
> secret = [3,4,5,1,3,6]
[3,4,5,1,3,6]
: List number
> challenge = [3,4,5,1,3,6]
[3,4,5,1,3,6]
: List number
> (secret == challenge)
True : Bool
> challenge = [3,4,5,1,3,5]
[3,4,5,1,3,5]
: List number
> (secret == challenge)
False : Bool
(Note that parentheses are needed because of a bug in elm repl
if I remember correctly)
Or did I miss something? Maybe you want another way as an exercise?
Also your solution won’t work if lists have a different length as List.map2
ignores extra values:
> challenge = [3,4,5,1,3,6,7]
[3,4,5,1,3,6,7]
: List number
> List.map2 (==) secret challenge |> List.all (\c -> c == True)
True : Bool