Portability  portable 

Stability  experimental 
Maintainer  hans@hanshoglund.se 
Safe Haskell  SafeInferred 
Provides overloaded pitch literals.
 newtype DynamicsL = DynamicsL {
 getDynamicsL :: (Maybe Double, Maybe Double)
 class IsDynamics a where
 fromDynamics :: DynamicsL > a
 pppppp :: IsDynamics a => a
 ppppp :: IsDynamics a => a
 pppp :: IsDynamics a => a
 ppp :: IsDynamics a => a
 pp :: IsDynamics a => a
 _p :: IsDynamics a => a
 mp :: IsDynamics a => a
 mf :: IsDynamics a => a
 _f :: IsDynamics a => a
 ff :: IsDynamics a => a
 fff :: IsDynamics a => a
 ffff :: IsDynamics a => a
 fffff :: IsDynamics a => a
 ffffff :: IsDynamics a => a
 sffz :: IsDynamics a => a
 sfz :: IsDynamics a => a
 fz :: IsDynamics a => a
 rfz :: IsDynamics a => a
 fp :: IsDynamics a => a
Documentation
Dynamics literal.
First value is start value, second is end value.

(Just x, Nothing)
is a constant dynamic ofx
*(Just x, Just y)
is a dynamic varying fromx
toy
*(Nothing, Just y)
is a dynamic varying from the previous level toy
*(Nothing, Nothing)
is a dynamic varying from the previous level to the next.
For levels, we use 0.5
for mp, 0.5
for mf and add or remove one for each level.
0
is an unspecified middle level dynamic.
class IsDynamics a whereSource
fromDynamics :: DynamicsL > aSource
IsDynamics Double  
IsDynamics DynamicsL  
IsDynamics a => IsDynamics (Maybe a) 
pppppp :: IsDynamics a => aSource
ppppp :: IsDynamics a => aSource
pppp :: IsDynamics a => aSource
ppp :: IsDynamics a => aSource
pp :: IsDynamics a => aSource
_p :: IsDynamics a => aSource
mp :: IsDynamics a => aSource
mf :: IsDynamics a => aSource
_f :: IsDynamics a => aSource
ff :: IsDynamics a => aSource
fff :: IsDynamics a => aSource
ffff :: IsDynamics a => aSource
fffff :: IsDynamics a => aSource
ffffff :: IsDynamics a => aSource
sffz :: IsDynamics a => aSource
sfz :: IsDynamics a => aSource
fz :: IsDynamics a => aSource
rfz :: IsDynamics a => aSource
fp :: IsDynamics a => aSource