X-Git-Url: http://lambda.jimpryor.net/git/gitweb.cgi?p=lambda.git;a=blobdiff_plain;f=topics%2Fweek3_lists.mdwn;h=6f7c1e0fa6e1e5c6ae4a3b8a69b9078ef545e705;hp=14663cda323d858fbbf762ce593089054b32b568;hb=8b4fc32ec904cba61e9fd304c971f9e5dc465d88;hpb=3f14ad8bc8bc4e48423e1c2b30b32dd5bd929d2a diff --git a/topics/week3_lists.mdwn b/topics/week3_lists.mdwn index 14663cda..6f7c1e0f 100644 --- a/topics/week3_lists.mdwn +++ b/topics/week3_lists.mdwn @@ -48,7 +48,7 @@ Haskell also has an extension that permits you to iterate over multiple lists *i [ 10*x + y | y <- [4, 5, 6] | x <- [1, 2, 3] ] -will evaluate to `[14, 25, 36]`. If the lists are of unequal length, Haskell stops when it exhausts the first. These behaviors are similar to the `map2` function you defined in the week 1 homework. That also took an argument from each of several sequences in parallel. (The corresponding functions in Haskell are called `zip` and `zipWith`.) +will evaluate to `[14, 25, 36]`. If the lists are of unequal length, Haskell stops when it exhausts the shortest. These behaviors are similar to the `map2` function you defined in the week 1 homework. That also took an argument from each of several sequences in parallel. (The corresponding functions in Haskell are called `zip` and `zipWith`.) OCaml [permits lists comprehensions as an extension](http://stackoverflow.com/questions/27652428/list-comprehension-in-ocaml), and [so too does Scheme](http://srfi.schemers.org/srfi-42/srfi-42.html), but these are a bit harder to use.