{- # LANGUAGE FreeSections #-} -- with GHC's -F you cannot... module S15(main) where main = do putStrLn $ unlines $ map show [v1,v2,v3,v4,v5,v6,v7,v8,v9] v0= (f __ y) v9= map (foo (g __) x) (h __) v8= _[ __ ]_ 5 v7= let f = (+) in zipWith f [1,2,3] [4,5,6] v6= let f = ( (+) __ 2 ) in map f [1,2,3] v5= let f = (+) __ 2 in map f [1,2,3] v4= map f [1,2,3] where f = (+) __ 2 v3= map ( (+) __ 2 ) [1,2,3] v2= map _[ (+) __ 2 ]_ [1,2,3] v1= map _[ (\x y -> x+y) __ 2 ]_ [1,2,3]