hommage-0.0.5: Haskell Offline Music Manipulation And Generation EDSLSource codeContentsIndex
Sound.Hommage.Misc
Contents
Imperative control structure
Usefull list functions
More usefull functions
Embedding IO in a list (-map)
Synopsis
for :: Monad m => a -> (a -> Bool) -> (a -> a) -> (a -> m b) -> m ()
for' :: Monad m => a -> (a -> Bool) -> (a -> a) -> b -> (a -> b -> m b) -> m b
map_ :: (a -> b) -> [a] -> [b]
foldr_ :: (a -> b -> b) -> b -> [a] -> b
merge :: (a -> a -> a) -> [a] -> [a] -> [a]
mergeSet :: ([a] -> b) -> [[a]] -> [b]
uneitherlist :: [Either a b] -> ([a], [b])
walk :: ([a] -> [b]) -> [a] -> ([a], [b])
appendmaps :: [[a] -> [b]] -> [a] -> [b]
appendmaps' :: [[a] -> [b]] -> [a] -> [[b]]
qsort :: (a -> a -> Bool) -> [a] -> [a]
qsortM :: Monad m => (a -> a -> m Bool) -> [a] -> m [a]
head_opt :: a -> [a] -> a
newFilePath :: (Int -> FilePath) -> IO FilePath
inList :: IO (Maybe a -> IO (Maybe b)) -> [a] -> [b]
inList' :: IO (a -> IO b) -> [a] -> [b]
inList'' :: IO (a -> IO (Maybe b)) -> [a] -> [b]
toList :: IO (IO a) -> [a]
toList' :: IO (IO (Maybe a)) -> [a]
inListE :: IO (Either (Maybe a -> IO (Maybe b)) (Maybe a -> IO (Maybe c))) -> [a] -> Either [b] [c]
inListE' :: IO (Either (a -> IO b) (a -> IO c)) -> [a] -> Either [b] [c]
inListE'' :: IO (Either (a -> IO (Maybe b)) (a -> IO (Maybe c))) -> [a] -> Either [b] [c]
toListE :: IO (Either (IO a) (IO b)) -> Either [a] [b]
toListE' :: IO (Either (IO (Maybe a)) (IO (Maybe b))) -> Either [a] [b]
Imperative control structure
for :: Monad m => a -> (a -> Bool) -> (a -> a) -> (a -> m b) -> m ()Source
for' :: Monad m => a -> (a -> Bool) -> (a -> a) -> b -> (a -> b -> m b) -> m bSource
Usefull list functions
map_ :: (a -> b) -> [a] -> [b]Source
a pseudo-strict map version. does not touch the elements but reconstructs the whole list structure before the function is applied to the value
foldr_ :: (a -> b -> b) -> b -> [a] -> bSource
a pseudo-strict foldr version. does not touch the elements but reconstructs the whole list structure before the function is applied to the values.
merge :: (a -> a -> a) -> [a] -> [a] -> [a]Source
Similar to zipWith, but the result has the length of the longer input list.
mergeSet :: ([a] -> b) -> [[a]] -> [b]Source
uneitherlist :: [Either a b] -> ([a], [b])Source
walk :: ([a] -> [b]) -> [a] -> ([a], [b])Source
appendmaps :: [[a] -> [b]] -> [a] -> [b]Source
appendmaps' :: [[a] -> [b]] -> [a] -> [[b]]Source
qsort :: (a -> a -> Bool) -> [a] -> [a]Source
qsortM :: Monad m => (a -> a -> m Bool) -> [a] -> m [a]Source
More usefull functions
head_opt :: a -> [a] -> aSource
newFilePath :: (Int -> FilePath) -> IO FilePathSource
the given function must create a filepath using the Int-argument. The filepath must be different for different arguments. newFilePath works like Gdels mu-operator and terminates only if the filepath does not exist.
Embedding IO in a list (-map)
inList :: IO (Maybe a -> IO (Maybe b)) -> [a] -> [b]Source
inList' :: IO (a -> IO b) -> [a] -> [b]Source
inList'' :: IO (a -> IO (Maybe b)) -> [a] -> [b]Source
toList :: IO (IO a) -> [a]Source
toList' :: IO (IO (Maybe a)) -> [a]Source
inListE :: IO (Either (Maybe a -> IO (Maybe b)) (Maybe a -> IO (Maybe c))) -> [a] -> Either [b] [c]Source
inListE' :: IO (Either (a -> IO b) (a -> IO c)) -> [a] -> Either [b] [c]Source
inListE'' :: IO (Either (a -> IO (Maybe b)) (a -> IO (Maybe c))) -> [a] -> Either [b] [c]Source
toListE :: IO (Either (IO a) (IO b)) -> Either [a] [b]Source
toListE' :: IO (Either (IO (Maybe a)) (IO (Maybe b))) -> Either [a] [b]Source
Produced by Haddock version 2.4.2