From f56eb538b6e366202f796c84eee46e620f519ff6 Mon Sep 17 00:00:00 2001 From: Jasper Van der Jeugt Date: Mon, 7 Feb 2011 16:01:09 +0100 Subject: Lazy pattern matching for compiler composition --- src/Hakyll/Core/Util/Arrow.hs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/Hakyll/Core/Util') diff --git a/src/Hakyll/Core/Util/Arrow.hs b/src/Hakyll/Core/Util/Arrow.hs index 49cbf2b..dfcb7da 100644 --- a/src/Hakyll/Core/Util/Arrow.hs +++ b/src/Hakyll/Core/Util/Arrow.hs @@ -7,6 +7,8 @@ module Hakyll.Core.Util.Arrow , mapA ) where +import Prelude hiding (id) +import Control.Category (id) import Control.Arrow ( Arrow, ArrowChoice, (&&&), arr, (>>^), (|||) , (>>>), (***) ) @@ -30,7 +32,7 @@ unitA = constA () mapA :: ArrowChoice a => a b c -> a [b] [c] -mapA f = arr listEither >>> arr id ||| (f *** mapA f >>> arr (uncurry (:))) +mapA f = arr listEither >>> id ||| (f *** mapA f >>> arr (uncurry (:))) where listEither [] = Left [] listEither (x : xs) = Right (x, xs) -- cgit v1.2.3