hmt-0.15: Haskell Music Theory

Safe Haskell | None
Language | Haskell98

Music.Theory.Z12.Morris_1987

Contents

- Serial operations

Description

Robert Morris. /Composition with Pitch-Classes: A Theory of Compositional Design/. Yale University Press, New Haven, 1987.

Synopsis

- int :: [Z12] -> [Z12]
- data SRO = SRO Z12 Bool Z12 Bool Bool
- sro :: SRO -> [Z12] -> [Z12]
- sros :: [Z12] -> [(SRO, [Z12])]
- sro_Tn :: [SRO]
- sro_TnI :: [SRO]
- sro_RTnI :: [SRO]
- sro_TnMI :: [SRO]
- sro_RTnMI :: [SRO]

# Documentation

int :: [Z12] -> [Z12] Source #

`INT` operator.

    int [0,1,3,6,10] == [1,2,3,4]

# Serial operations

data SRO Source #

Serial Operator,of the form rRTMI.

Constructors

SRO Z12 Bool Z12 Bool Bool |

Instances

Eq SRO Source # |
Methods (==) :: SRO -> SRO -> Bool # (/=) :: SRO -> SRO -> Bool #
Show SRO Source # |
Methods showsPrec :: Int -> SRO -> ShowS # show :: SRO -> String # showList :: [SRO] -> ShowS #

sro :: SRO -> [Z12] -> [Z12] Source #

Serial operation.

    >>> sro T4 156
    59A

    sro (rnrtnmi "T4") (pco "156") == [5,9,10]

    >>> echo 024579 | sro RT4I
    79B024

    sro (SRO 0 True 4 False True) [0,2,4,5,7,9] == [7,9,11,0,2,4]

    >>> sro T4I 156
    3BA

    sro (rnrtnmi "T4I") (pco "156") == [3,11,10]
    sro (SRO 0 False 4 False True) [1,5,6] == [3,11,10]

    >>> echo 156 | sro T4  | sro T0I
    732

    (sro (rnrtnmi "T0I") . sro (rnrtnmi "T4")) (pco "156") == [7,3,2]

    >>> echo 024579 | sro RT4I
    79B024

    sro (rnrtnmi "RT4I") (pco "024579") == [7,9,11,0,2,4]

    sro (SRO 1 True 1 True False) [0,1,2,3] == [11,6,1,4]
    sro (SRO 1 False 4 True True) [0,1,2,3] == [11,6,1,4]

sros :: [Z12] -> [(SRO, [Z12])] Source #

The total set of serial operations.

sro_Tn :: [SRO] Source #

The set of transposition `SRO`s.

sro_TnI :: [SRO] Source #

The set of transposition and inversion `SRO`s.

sro_RTnI :: [SRO] Source #

The set of retrograde and transposition and inversion `SRO`s.

sro_TnMI :: [SRO] Source #

The set of transposition,`M5` and inversion `SRO`s.

sro_RTnMI :: [SRO] Source #

The set of retrograde,transposition,`M5` and inversion `SRO`s.