You're getting ahead of me again.

Michael

--- On Sun, 4/12/09, Jake McArthur <[email protected]> wrote:

From: Jake McArthur <[email protected]>
Subject: Re: [Haskell-cafe] Functions that return functions
To: "michael rice" <[email protected]>
Cc: [email protected]
Date: Sunday, April 12, 2009, 5:45 PM

michael rice wrote:
> Admittedly, functions that return functions are Lispy, but perhaps there a 
> Haskelly way to accomplish the same thing?

Actually, I think you will come to find that this way of thinking is more 
Haskelly than it is Lispy!

    import Control.Applicative ((<$), (<*>))
    import Control.Arrow       ((&&&))
    import Control.Monad       (guard)
    import Data.List           (unfoldr)

    makeVerifier f m = (==0) . (`mod` m) . sum . zipWith f [1..] . unfoldr 
nextDigit
        where nextDigit = (<$) . (snd &&& fst) . (`divMod` 10) <*> guard . (/= 
0)

- Jake



      
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to