# What's the operator equivalent of polymetric sequences?

**URL:** <https://uzu.lurk.org/t/whats-the-operator-equivalent-of-polymetric-sequences/5153>\
**Category:** TidalCycles\
**Tags:** questions\
**Created:** [17 April 2024 10:51 UTC](https://uzu.lurk.org/t/whats-the-operator-equivalent-of-polymetric-sequences/5153 "2024-04-17T10:51:38Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![zmrocze](https://uzu.lurk.org/user_avatar/uzu.lurk.org/zmrocze/32/2835_2.png) [@zmrocze](https://uzu.lurk.org/u/zmrocze)\
**Post date:** [17 April 2024 10:51 UTC](https://uzu.lurk.org/t/whats-the-operator-equivalent-of-polymetric-sequences/5153/1 "2024-04-17T10:51:38Z")

</div>

Hey! a novice here

Some concrete thing I'd like to do is to apply an effect every 3rd hit to a pattern that counts in 4.

What I've learned is that to play pattern in 3 with a pattern in 4 in the "wrapping" way like:

```haskell
| 0 1 2 0 1 2 0 1 2 0 1 2 |
| 0 1 2 3 0 1 2 3 0 1 2 3 |

```

I do

```haskell
"{0 1 2, 0 1 2 3}"

```

> EDIT: with the beat markers what I've drawn is really "[{0 1 2}%12, {0 1 2 3}%12], isn't it? The pattern "{0 1 2, 0 1 2 3}" is instead 4 beat long sequence (so by default it plays 4 times slower). Do I get it right?

But what do I do to i.e. apply an effect every third hit to a pattern of four? Or to apply in sequence 3 chords to a pattern of 4 notes? Well, basically: what is the operator equivalent of the `{}` mini notation?

Thanks!!

---

<div class="post-metadata">

**Author:** ![geikha](https://uzu.lurk.org/user_avatar/uzu.lurk.org/geikha/32/2701_2.png) [@geikha](https://uzu.lurk.org/u/geikha)\
**Post date:** [17 April 2024 18:14 UTC](https://uzu.lurk.org/t/whats-the-operator-equivalent-of-polymetric-sequences/5153/2 "2024-04-17T18:14:58Z")

</div>

From what I see in the parser, there isn't really a pre-defined function. It stacks and adjust speeds according to the amount of elements it reads from the mini-notation. Anyone feel free to correct me if I'm missing something

 ![image](https://club.tidalcycles.org/uploads/default/original/2X/0/0d45571cf3568da958a1449daeb2fa23a75f8864.png)

---

<div class="post-metadata">

**Author:** ![yaxu](https://uzu.lurk.org/user_avatar/uzu.lurk.org/yaxu/32/2_2.png) [@yaxu](https://uzu.lurk.org/u/yaxu)\
**Post date:** [19 April 2024 20:20 UTC](https://uzu.lurk.org/t/whats-the-operator-equivalent-of-polymetric-sequences/5153/3 "2024-04-19T20:20:57Z")

</div>

Yes this isn't possible in the current release of Tidal which is all cycle based.

However I have been working on this recently and this kind of 'stepwise' function should be in the next tidal release. There's a bit of info about it here: [Step-oriented functionality by yaxu · Pull Request #1072 · tidalcycles/Tidal · GitHub](https://github.com/tidalcycles/Tidal/pull/1072)

I'm still working on it, but as things stand you will be able to do what you want via

```hs
d1 $ s_nth 3 (# speed 2) $ s "bd sd cp ht"

```

Also there will be a function for polymeters called `s_polymeter`

---

<div class="post-metadata">

**Author:** ![zmrocze](https://uzu.lurk.org/user_avatar/uzu.lurk.org/zmrocze/32/2835_2.png) [@zmrocze](https://uzu.lurk.org/u/zmrocze)\
**Post date:** [20 April 2024 12:20 UTC](https://uzu.lurk.org/t/whats-the-operator-equivalent-of-polymetric-sequences/5153/4 "2024-04-20T12:20:28Z")

</div>

thanks, good luck on the release then!
