Karya, built on 2023-08-29T07:47:28 (patch 7a412d5d6ba4968ca4155ef276a062ccdeb9109a)
Safe HaskellSafe-Inferred

Solkattu.Instrument.Mridangam

Description

Realize an abstract solkattu Notes to concrete mridangam Notes.

Synopsis

Documentation

data Stroke Source #

Instances

Instances details
IsString SequenceM Source # 
Instance details

Defined in Solkattu.Dsl.Solkattu

Show Stroke Source # 
Instance details

Defined in Solkattu.Instrument.Mridangam

Eq Stroke Source # 
Instance details

Defined in Solkattu.Instrument.Mridangam

Methods

(==) :: Stroke -> Stroke -> Bool #

(/=) :: Stroke -> Stroke -> Bool #

Ord Stroke Source # 
Instance details

Defined in Solkattu.Instrument.Mridangam

Expr.ToExpr Stroke Source #

Pretty reproduces the Derive.Solkattu.Dsl syntax, which has to be haskell syntax, so it can't use +, and I have to put thoppi first to avoid the keyword do. It would be nice if I could make the tracklang syntax consistent, but maybe not a huge deal at the moment.

Instance details

Defined in Solkattu.Instrument.Mridangam

Solkattu.Notation Stroke Source # 
Instance details

Defined in Solkattu.Instrument.Mridangam

Pretty Stroke Source # 
Instance details

Defined in Solkattu.Instrument.Mridangam

Expr.ToExpr (Realize.Stroke Stroke) Source # 
Instance details

Defined in Solkattu.Instrument.Mridangam

data Thoppi Source #

Constructors

Tha !Tha 
Thom !Thom 
Gum

Just the gumiki movement, no strike. Or possibly a light strike to make it speak if it doesn't sustain.

Instances

Instances details
Show Thoppi Source # 
Instance details

Defined in Solkattu.Instrument.Mridangam

Eq Thoppi Source # 
Instance details

Defined in Solkattu.Instrument.Mridangam

Methods

(==) :: Thoppi -> Thoppi -> Bool #

(/=) :: Thoppi -> Thoppi -> Bool #

Ord Thoppi Source # 
Instance details

Defined in Solkattu.Instrument.Mridangam

Solkattu.Notation Thoppi Source # 
Instance details

Defined in Solkattu.Instrument.Mridangam

Pretty Thoppi Source # 
Instance details

Defined in Solkattu.Instrument.Mridangam

data Valantalai Source #

Constructors

Ki 
Ta 
Mi

light Ki, played with middle finger

Nam 
Din 
AraiChapu

"half chapu", played covering half the valantalai

MuruChapu

"full chapu", played with just the pinky touching saddam

Dheem 
Kin

ki on meetu

Tan

ta on meetu

Instances

Instances details
Bounded Valantalai Source # 
Instance details

Defined in Solkattu.Instrument.Mridangam

Enum Valantalai Source # 
Instance details

Defined in Solkattu.Instrument.Mridangam

Show Valantalai Source # 
Instance details

Defined in Solkattu.Instrument.Mridangam

Eq Valantalai Source # 
Instance details

Defined in Solkattu.Instrument.Mridangam

Ord Valantalai Source # 
Instance details

Defined in Solkattu.Instrument.Mridangam

Solkattu.Notation Valantalai Source # 
Instance details

Defined in Solkattu.Instrument.Mridangam

Pretty Valantalai Source # 
Instance details

Defined in Solkattu.Instrument.Mridangam

data Tha Source #

Constructors

Palm

standard tha

Fingertips

touch with fingertips

Fingers

flat of the fingers

Instances

Instances details
Show Tha Source # 
Instance details

Defined in Solkattu.Instrument.Mridangam

Methods

showsPrec :: Int -> Tha -> ShowS #

show :: Tha -> String #

showList :: [Tha] -> ShowS #

Eq Tha Source # 
Instance details

Defined in Solkattu.Instrument.Mridangam

Methods

(==) :: Tha -> Tha -> Bool #

(/=) :: Tha -> Tha -> Bool #

Ord Tha Source # 
Instance details

Defined in Solkattu.Instrument.Mridangam

Methods

compare :: Tha -> Tha -> Ordering #

(<) :: Tha -> Tha -> Bool #

(<=) :: Tha -> Tha -> Bool #

(>) :: Tha -> Tha -> Bool #

(>=) :: Tha -> Tha -> Bool #

max :: Tha -> Tha -> Tha #

min :: Tha -> Tha -> Tha #

data Thom Source #

Constructors

Low

This could be either normal open stroke, or gumiki low stroke.

Up

gumiki up

Instances

Instances details
Show Thom Source # 
Instance details

Defined in Solkattu.Instrument.Mridangam

Methods

showsPrec :: Int -> Thom -> ShowS #

show :: Thom -> String #

showList :: [Thom] -> ShowS #

Eq Thom Source # 
Instance details

Defined in Solkattu.Instrument.Mridangam

Methods

(==) :: Thom -> Thom -> Bool #

(/=) :: Thom -> Thom -> Bool #

Ord Thom Source # 
Instance details

Defined in Solkattu.Instrument.Mridangam

Methods

compare :: Thom -> Thom -> Ordering #

(<) :: Thom -> Thom -> Bool #

(<=) :: Thom -> Thom -> Bool #

(>) :: Thom -> Thom -> Bool #

(>=) :: Thom -> Thom -> Bool #

max :: Thom -> Thom -> Thom #

min :: Thom -> Thom -> Thom #

strokes

data Strokes a Source #

Constructors

Strokes 

Fields

  • k :: a
     
  • t :: a
     
  • l :: a
     
  • n :: a
     
  • d :: a
     
  • u :: a
     
  • v :: a
     
  • i :: a
     
  • y :: a

    Mnemonic: y = kin = , uses 3 fingers, j = tan = ^ uses 1.

  • j :: a
     
  • p :: a
     
  • p' :: a
     
  • o :: a
     
  • o' :: a

    gumiki up

  • _' :: a
     
  • od :: a

    do would match score notation, but do is a keyword. Ultimately that's because score uses + for tha, and +o is an attr, while o+ is a bareword. But perhaps I should change + to p in the score, and then the left hand can go on the left side?

Instances

Instances details
Functor Strokes Source # 
Instance details

Defined in Solkattu.Instrument.Mridangam

Methods

fmap :: (a -> b) -> Strokes a -> Strokes b #

(<$) :: a -> Strokes b -> Strokes a #

Show a => Show (Strokes a) Source # 
Instance details

Defined in Solkattu.Instrument.Mridangam

Methods

showsPrec :: Int -> Strokes a -> ShowS #

show :: Strokes a -> String #

showList :: [Strokes a] -> ShowS #

fromString

postprocess

patterns

misc :: [(S.Matra, SequenceR)] Source #

Misc patterns I should figure out how to integrate some day.

intense :: [SequenceR] Source #

Intense variations of sequences, usually on the 3rd time. I don't have a way to use these yet.