On 9/11/07, Don Stewart <[EMAIL PROTECTED]> wrote: > > byorgey: > > On 9/11/07, PR Stanley <[EMAIL PROTECTED]> wrote: > > > > Hi > > take 1000 [1..3] still yields [1,2,3] > > I thought it was supposed to return an error. > > Any ideas? > > Thanks, Paul > > > > If for some reason you want a version that does return an error in > that > > situation, you could do something like the following: > > > > take' n _ | (n <= 0) = [] > > take' n [] | (n > 0) = error "take': list too short" > > | otherwise = [] > > take' n (x:xs) = x : take' (n-1) xs > > And we'd call it unsafeTake, just like unsafeFromJust and unsafeTail :-) > > -- Don >
Hmm, that's funny, I don't recall ever hearing of those functions... =) ooo, Don has a shiny new e-mail address! -Brent
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe