Control feedback

it is possible to do this in BootTidal.hs:

tidal <- startMulti [OSCTarget {oName = "Tidal", oAddress = "127.0.0.1", oPort = 6010, oPath = "/ctrl", oShape = Just [("phasor", Nothing)], oLatency = 0.02, oPreamble = [toDatum $ VS "phasor"], oTimestamp = BundleStamp}, (superdirtTarget {oLatency = 0.1, oAddress = "127.0.0.1", oPort = 57120})] (defaultConfig {cFrameTimespan = 1/20})

and then:

p 1 $ pF "phasor" $ "1*64" |> (pi/32 + cF 0 "phasor") -- increments "phasor" every 1/64th cycle
p 2 $ s "bd*16" # speed  (rangex 0.5 2 $ sin (cF 0 "phasor")) -- stateful LFO

feels like it should be possible to do something like this without the mild absurdity of making tidal send OSC to itself. But is it? Would there need to be special logic in onTick, like for cps patterning?

related: How does trigger's implementation work? (Is it possible to have patterns react to each other?)

also related: https://github.com/tidalcycles/Tidal/issues/483