Haskell で FizzBuzz ShizuDev

fizzbuzz i = (\lst -> if lst == [] then [show i] else lst)
           $ fb 3 "Fizz"
           $ fb 5 "Buzz"
           $ fb 7 "Shizu"
           $ fb 11 "Dev"
           $ []
    where fb n s = \lst -> if i `mod` n == 0 then s : lst else lst

prlst lst = do sequence_ $ map putStr lst
               putChar '\n'

main = let lstlst = map fizzbuzz [1 .. 77]
       in sequence_ $ map prlst lstlst