Safe Haskell | Safe-Inferred |
---|
Carnatic ragas.
Synopsis
- scales :: [Scale.Definition]
- doc :: Doc.Doc
- doc_fields :: [(Doc.Doc, Doc.Doc)]
- scale_map :: TheoryFormat.Format -> JustScales.ScaleMap
- relative_fmt :: TheoryFormat.RelativeFormat TheoryFormat.Tonic
- default_key :: JustScales.Key
- keys :: Map Pitch.Key JustScales.Key
- melakarta_keys :: [(Pitch.Key, JustScales.Key)]
- melakarta_ragams :: [(Name, Ragam)]
- melakarta_intervals :: [(Name, [Pitch.Semi])]
- type Ratio = Ratio.Ratio Int
- data SwaramP
- swaram_ratio :: SwaramP -> Ratio
- all_swarams :: [SwaramP]
- all_ratios :: [Ratio]
- unswaram :: SwaramP -> Swaram
- swaramps :: Swaram -> [SwaramP]
- data Swaram
- type Name = Text
- type Ragam = RagamT SwaramP
- data RagamT a
- ragam_swarams :: Ragam -> ([SwaramP], Maybe [SwaramP])
- ragam_ratios :: Ragam -> JustScales.Ratios
- janya :: Map Name [(Name, Ragam)]
- get_swarams :: Name -> Name -> RagamT Swaram -> RagamT SwaramP
- ragams :: [(Name, Ragam)]
- melakarta_names :: [Name]
- alternates :: [([Char], [Char])]
- alternate :: Eq a => [([a], [a])] -> [a] -> [[a]]
- aliases :: Map Name [Name]
- assert_valid_name :: (Name, a) -> (Name, a)
- print_all :: IO ()
- print_ragams :: Pattern -> IO ()
- find_by_swarams :: [SwaramP] -> IO ()
- type Pattern = String
- find_ragams :: Pattern -> [(Name, Ragam)]
- show_ragams :: [(Name, Ragam)] -> Text
- show_ragam :: (Name, Ragam) -> [Text]
- header :: [[Text]]
- data Dir
- show_swarams :: Ragam -> [[Text]]
- justify :: [Text] -> Text
Documentation
scales :: [Scale.Definition] Source #
doc_fields :: [(Doc.Doc, Doc.Doc)] Source #
implementation
melakarta_keys :: [(Pitch.Key, JustScales.Key)] Source #
melakarta_ragams :: [(Name, Ragam)] Source #
melakarta_intervals :: [(Name, [Pitch.Semi])] Source #
This is the same as melakarta_ragams
, but with intervals. I should
probably derive melakarta_ragams from this.
type Ratio = Ratio.Ratio Int Source #
Instances
Enum SwaramP Source # | |
Show SwaramP Source # | |
Eq SwaramP Source # | |
Ord SwaramP Source # | |
swaram_ratio :: SwaramP -> Ratio Source #
all_swarams :: [SwaramP] Source #
all_ratios :: [Ratio] Source #
Arohana / avarohana structure. Sa is implicit, so it's omitted.
Same [a] | The arohana is given, the avarohana is the same but reversed. |
Different [a] [a] | Arohana ascending from low sa, avarohana descending from high sa. The first and last Sa are omitted, since they are implicit. |
Instances
melakarta_names :: [Name] Source #
alternates :: [([Char], [Char])] Source #
assert_valid_name :: (Name, a) -> (Name, a) Source #
query
print_ragams :: Pattern -> IO () Source #
find_by_swarams :: [SwaramP] -> IO () Source #
query implementation
show_swarams :: Ragam -> [[Text]] Source #