💣 Machine learning which might blow up in your face 💣

examples: Use CPP to support multiple GHC versions

+20 -1
+3 -1
examples/main/feedforward.hs
··· 1 1 {-# LANGUAGE BangPatterns #-} 2 + {-# LANGUAGE CPP #-} 2 3 {-# LANGUAGE DataKinds #-} 3 4 {-# LANGUAGE ScopedTypeVariables #-} 4 5 {-# LANGUAGE TypeOperators #-} ··· 10 11 11 12 import qualified Data.ByteString as B 12 13 import Data.Serialize 14 + #if ! MIN_VERSION_base(4,13,0) 13 15 import Data.Semigroup ( (<>) ) 14 - 16 + #endif 15 17 import GHC.TypeLits 16 18 17 19 import qualified Numeric.LinearAlgebra.Static as SA
+3
examples/main/gan-mnist.hs
··· 1 1 {-# LANGUAGE BangPatterns #-} 2 + {-# LANGUAGE CPP #-} 2 3 {-# LANGUAGE DataKinds #-} 3 4 {-# LANGUAGE GADTs #-} 4 5 {-# LANGUAGE ScopedTypeVariables #-} ··· 43 44 import qualified Data.Attoparsec.Text as A 44 45 import qualified Data.ByteString as B 45 46 import Data.List ( foldl' ) 47 + #if ! MIN_VERSION_base(4,13,0) 46 48 import Data.Semigroup ( (<>) ) 49 + #endif 47 50 import Data.Serialize 48 51 import qualified Data.Text as T 49 52 import qualified Data.Text.IO as T
+4
examples/main/mnist.hs
··· 1 1 {-# LANGUAGE BangPatterns #-} 2 + {-# LANGUAGE CPP #-} 2 3 {-# LANGUAGE DataKinds #-} 3 4 {-# LANGUAGE ScopedTypeVariables #-} 4 5 {-# LANGUAGE TypeOperators #-} ··· 13 14 14 15 import qualified Data.Attoparsec.Text as A 15 16 import Data.List ( foldl' ) 17 + #if ! MIN_VERSION_base(4,13,0) 16 18 import Data.Semigroup ( (<>) ) 19 + #endif 20 + 17 21 import qualified Data.Text as T 18 22 import qualified Data.Text.IO as T 19 23 import qualified Data.Vector.Storable as V
+4
examples/main/recurrent.hs
··· 9 9 import Control.Monad ( foldM ) 10 10 import Control.Monad.Random ( MonadRandom, getRandomR ) 11 11 12 + #if MIN_VERSION_base(4,13,0) 13 + import Data.List ( unfoldr ) 14 + #else 12 15 import Data.List ( cycle, unfoldr ) 13 16 import Data.Semigroup ( (<>) ) 17 + #endif 14 18 15 19 import qualified Numeric.LinearAlgebra.Static as SA 16 20
+6
examples/main/shakespeare.hs
··· 1 1 {-# LANGUAGE BangPatterns #-} 2 + {-# LANGUAGE CPP #-} 2 3 {-# LANGUAGE RecordWildCards #-} 3 4 {-# LANGUAGE DataKinds #-} 4 5 {-# LANGUAGE ScopedTypeVariables #-} ··· 13 14 import Data.Char ( isUpper, toUpper, toLower ) 14 15 import Data.List ( foldl' ) 15 16 import Data.Maybe ( fromMaybe ) 17 + 18 + #if ! MIN_VERSION_base(4,13,0) 16 19 import Data.Semigroup ( (<>) ) 20 + #endif 17 21 18 22 import qualified Data.Vector as V 19 23 import Data.Vector ( Vector ) 20 24 21 25 import qualified Data.Map as M 26 + #if ! MIN_VERSION_base(4,13,0) 22 27 import Data.Proxy ( Proxy (..) ) 28 + #endif 23 29 24 30 import qualified Data.ByteString as B 25 31 import Data.Serialize