alga-0.2.2: Algorithmic automation for various DAWs

Alga.Language.Element

Synopsis

# Documentation

type Principle = [Element NRatio] Source #

Collection of elements for evaluation, representation of some aspect of voice.

Non-negative rational number is the best choice for our purposes, hence the synonym.

data Element a Source #

Fundamental type representing an atom for evaluation.

Constructors

 Val a Single value, evaluates to itself Sec [Element a] Universal container for other values Mul [Element a] Multivalue, the way to introduce varying elements CMul (NonEmpty ([Element a], [Element a])) Conditional multivalue

Instances

 Source # Methodsfmap :: (a -> b) -> Element a -> Element b #(<\$) :: a -> Element b -> Element a # Source # Methodspure :: a -> Element a #(<*>) :: Element (a -> b) -> Element a -> Element b #(*>) :: Element a -> Element b -> Element b #(<*) :: Element a -> Element b -> Element a # Source # Methodsfold :: Monoid m => Element m -> m #foldMap :: Monoid m => (a -> m) -> Element a -> m #foldr :: (a -> b -> b) -> b -> Element a -> b #foldr' :: (a -> b -> b) -> b -> Element a -> b #foldl :: (b -> a -> b) -> b -> Element a -> b #foldl' :: (b -> a -> b) -> b -> Element a -> b #foldr1 :: (a -> a -> a) -> Element a -> a #foldl1 :: (a -> a -> a) -> Element a -> a #toList :: Element a -> [a] #null :: Element a -> Bool #length :: Element a -> Int #elem :: Eq a => a -> Element a -> Bool #maximum :: Ord a => Element a -> a #minimum :: Ord a => Element a -> a #sum :: Num a => Element a -> a #product :: Num a => Element a -> a # Eq a => Eq (Element a) Source # Methods(==) :: Element a -> Element a -> Bool #(/=) :: Element a -> Element a -> Bool # Show a => Show (Element a) Source # MethodsshowsPrec :: Int -> Element a -> ShowS #show :: Element a -> String #showList :: [Element a] -> ShowS #