Patterns in Sequence

Maybe this is a clear method to order sequence of patterns, next to a linear time mode thinkin. Note that in this idea each of the two channels (right and left, because all we have almost a stereophonic setup) can get the notes from a pattern (seq1,2,ecc…) but each channell is using a specific synth.
The “discover” here is the use of dotted comma in the function in_thread. Thanks to the community that make my spot over that due some composition posted in these days (@binarysweets and @Eli) .

##PATTERNS##
define :seq1 do
  i = 0
  4.times do
    play (ring :c3, :c3, :c3, :c3)[i], release: 0.25
    sleep 0.25
    i = (inc i)
  end
end

define :seq2 do
  i = 0
  8.times do
    play (ring :f3, :a3, :c4, :e4)[i], release: 0.125
    sleep 0.125
    i = (inc i)
  end
end

define :seq3 do
  i = 0
  4.times do
    play (ring :g3, :b3, :d4, :f4)[i], release: 0.25
    sleep 0.25
    i = (inc i)
  end
end

define :seq4 do
  play :c4, release: 0.25
  sleep 4
end

define :paus do
  4.times do
    sleep 0.25
  end
end


##SEQUENCE##
use_bpm 66
with_fx :pan, pan: 1 do
  use_synth :saw
  in_thread do seq1; seq2; paus; seq1; seq2; paus; seq1; seq2; seq3; seq4 end
end
with_fx :pan, pan: -1 do
  use_synth :square
  in_thread do paus; seq3; seq1; seq3; paus; seq2; seq1; seq2; seq3; seq4 end
end