@hellocatfood asked for something like this on Discord so I wrote it as an operator:
xs `getWrap` i = xs !! (i `mod` length xs)
a |!!| b = getWrap <$> (collect a) <*> b
a |!! b = getWrap <$> (collect a) Sound.Tidal.Context.<* b
a !!| b = getWrap <$> (collect a) Sound.Tidal.Context.*> b
a ||!! b = getWrap <$> (collect a) <<* b
d1 $ note ("<d4'minor7 d4'13 cf4'13 a4'minor7>" !!| "[0 1 . [2|3]*4]") # s "superpiano"
Posting here to see if anyone comes up with cool ways of using this!