PLbrown dynamic scope Pbrown variant 


Part of: miSCellaneous


Inherits from: Pbrown


Takes Symbol args for later reference by the Streams, which will read from variables in the Environments of their instantiation. See PLx suite.


See also: Pbrown, PLgbrown, Event patterns and Functions, VarGui, VarGui shortcut builds



Creation / Class Methods


*new (lo, hi, step, length, envir)

Creates a new PLbrown object.

lo - Symbol or Pbrown lo arg. Defaults to 0.

If a Symbol is passed, lo can be assigned to an envir variable later on.

Can be dynamically replaced by Patterns or Streams.

hi - Symbol or Pbrown hi arg. Defaults to 1.

If a Symbol is passed, hi can be assigned to an envir variable later on.

Can be dynamically replaced by Patterns or Streams.

step - Symbol or Pbrown step arg. Defaults to 0.125.

If a Symbol is passed, step can be assigned to an envir variable later on.

Can be dynamically replaced by Patterns or Streams.

length - Symbol or Pbrown length arg. Defaults to inf.

If a Symbol is passed, length can be assigned to an envir variable later on.

envir - Dictionary or one of the Symbols

\top, \t (topEnvironment), \current, \c (currentEnvironment).

Dictionary to be taken for variable reference. Defaults to \current.


Examples


(

s = Server.local;

Server.default = s;

s.boot;

)

// definition for future reference in arbitrary Environments


p = PLbrown(\lo, \hi, \step);



// prepare current Environment

// PLseq repeats arg defaults to inf


(

~lo = 55;

~hi = 80;

~step = Pstutter(10, PLseq([0.05, 3.5]));

)



// run


(

x = Pbind(

\midinote, Ptuple(p!2), 

\dur, 0.1

).play;

)


// replace


(

~lo = Pseq((50..90));

~hi = Pseq((50..90) + 15);

)