tidal 0.4.6 → 0.4.7
raw patch · 6 files changed
+18/−11 lines, 6 files
Files
- Sound/Tidal/Parse.hs +8/−4
- Sound/Tidal/Strategies.hs +3/−0
- Sound/Tidal/Stream.hs +1/−1
- doc/tidal.md +3/−3
- tidal.cabal +1/−1
- tidal.el +2/−2
Sound/Tidal/Parse.hs view
@@ -120,10 +120,14 @@ pPolyOut :: Parser (Pattern a) -> Parser (Pattern a) pPolyOut f = do ps <- braces (pSequenceN f `sepBy` symbol ",") spaces- pMult $ mconcat $ scale ps- where scale [] = []- scale ((_,p):[]) = [p]- scale (ps@((n,_):_)) = map (\(n',p) -> density (fromIntegral n/ fromIntegral n') p) ps+ base <- do char '%'+ spaces+ i <- integer <?> "integer"+ return $ Just (fromIntegral i)+ <|> return Nothing+ pMult $ mconcat $ scale base ps+ where scale _ [] = []+ scale base (ps@((n,_):_)) = map (\(n',p) -> density (fromIntegral (fromMaybe n base)/ fromIntegral n') p) ps pString :: Parser (String) pString = many1 (letter <|> oneOf "0123456789:") <?> "string"
Sound/Tidal/Strategies.hs view
@@ -112,3 +112,6 @@ stut steps feedback time p = stack (p:(map (\x -> (((x%steps)*time) ~> (p |+| gain (pure $ scale (fromIntegral x))))) [0..(steps-1)])) where scale x = ((+feedback) . (*(1-feedback)) . (/(fromIntegral steps)) . ((fromIntegral steps)-)) x++scale :: (Functor f, Num b) => b -> b -> f b -> f b+scale from to p = ((+ from) . (* (to-from))) <$> p
Sound/Tidal/Stream.hs view
@@ -39,7 +39,7 @@ type OscPattern = Pattern OscMap -latency = 0.1+latency = 0.04 defaultDatum :: Param -> Maybe Datum defaultDatum (S _ (Just x)) = Just $ string x
doc/tidal.md view
@@ -696,7 +696,7 @@ remainder of the pattern cycle. ~~~~{.haskell}-d1 $ wedge (1/4) "bd*2 arpy*3 cp sn*2" "odx [feel future]*2 hh hh"+d1 $ wedge (1/4) (sound "bd*2 arpy*3 cp sn*2") (sound "odx [feel future]*2 hh hh") ~~~~ ## whenmod@@ -763,7 +763,7 @@ ~~~~ {.haskell} d1 $ stack [ sound "bd bd*2", - sound "hh*s [sn cp] cp future*4", + sound "hh*2 [sn cp] cp future*4", sound (samples "arpy*8", (run 16)) ] ~~~~@@ -774,7 +774,7 @@ ~~~~ {.haskell} d1 $ whenmod 5 3 (striate 3) $ stack [ sound "bd bd*2", - sound "hh*s [sn cp] cp future*4", + sound "hh*2 [sn cp] cp future*4", sound (samples "arpy*8", (run 16)) ] |+| speed "[[1 0.8], [1.5 2]*2]/3" ~~~~
tidal.cabal view
@@ -1,5 +1,5 @@ name: tidal-version: 0.4.6+version: 0.4.7 synopsis: Pattern language for improvised music -- description: homepage: http://yaxu.org/tidal/
tidal.el view
@@ -57,8 +57,8 @@ (tidal-send-string ":set prompt \"\"") (tidal-send-string ":module Sound.Tidal.Context") ; (tidal-send-string "import Volca.Beat")-; (tidal-send-string "import Volca.Key")-; (tidal-send-string "(note, [portamento, expression, voice, octave, detune, vcoegint, kcutoff, vcfegint, lforate, lfopitchint, lfocutoffint, attack, decay, sustain, dtime , dfeedback], keystop) <- keystart")+ (tidal-send-string "import Volca.Key")+ (tidal-send-string "(note, [portamento, expression, voice, octave, detune, vcoegint, kcutoff, vcfegint, lforate, lfopitchint, lfocutoffint, attack, decay, sustain, dtime , dfeedback], keystop) <- keystart") ; (tidal-send-string "(drum, [clapSpeed, clavesSpeed, agogoSpeed, crashSpeed, stutterTime, stutterDepth, tomDecay, clhatDecay, ophatDecay, hatGrain], beatstop) <- startbeat") (tidal-send-string "d1 <- dirtStream") (tidal-send-string "d2 <- dirtStream")