Hello everyone, recently I have being using a lot this type of syntax:
all $ degradeBy 0.8
which basically applies the function degradeBy to all the active streams.
I was wondering how this is implemented and if it would be possible to apply the same logic to individual streams. I think it would be very useful in a live context when you just feel something is off and you want to make a quick fix without navigating back to a certain line of your code.
Today I tried upgrading to the latest version of Tidal and I figure out that all doesn’t work anymore and it gives tis error:
t> [GHC-87543] Ambiguous occurrence ‘all’. It could refer to either ‘Sound.Tidal.Boot.all’, imported from ‘Sound.Tidal.Boot’, or ‘Prelude.all’, imported from ‘Prelude’ (and originally defined in ‘GHC.Internal.Data.Foldable’).
I have an upcoming show so I didn’t want to mess to much with this for now so I just reverted to version 1.9.5 where all still works works.
Wow, thank you, Francesco. I didn't know that degradeBy could be applied to all streams at the same time. Just as simple as it is useful for every performance! Especially since I'm still using 1.9.3 at the moment.
Today I tried upgrading to the latest version of Tidal and I figure out that all doesn’t work anymore and it gives tis error:
t> [GHC-87543] Ambiguous occurrence ‘all’. It could refer to either ‘Sound.Tidal.Boot.all’, imported from ‘Sound.Tidal.Boot’, or ‘Prelude.all’, imported from ‘Prelude’ (and originally defined in ‘GHC.Internal.Data.Foldable’).
The function still exists! there is just a name ambiguity with a function from Haskell’s standard library. I suspect that this comes from you using an older bootfile with a newer version of Tidal (citation needed). But you can easily fix manually this by hiding the function from the prelude:
import Prelude hiding (all)
put this in your bootfile or run it at the start of your performance!