[chuck-dev] what are PMSG functions for?

Ge Wang gewang at CS.Princeton.EDU
Sat Sep 9 09:25:02 EDT 2006

> Good to hear from you,

Same to you!

> Is it something specifically used to serialize/deserialize
> the state of a UGen?

I don't think so.  It's mostly intended to provide an alternate,
and un-typed api for a UGen.

> What does the P stand for?
> Does that mean there are also NPMSGs that do the same thing? :)

Huh huh.  Um, I can't remember what the P in pmsg stands for anymore.  
As for them npmsg's... it's unclear whether they are equivalent to 
pmsg's - another open problem in chuckian theory.

> So maybe they would work like this:
> StifKarp k => Filter f => dac;
> f.pmsg( "0.2 0.1 0.4; 0.2 0.4" );


> or something more like this, like an alternate namespace:
> f.pmsg( "coefs", "0.2 0.1 0.4; 0.2 0.4" );

That too, though pmsg, for generality is always one string.  So it's 
more like:

f.pmsg( "coefs 0.2 0.1 0.4; 0.2 0.4" );

The UGen can define the protocol freely.

> I'm still not sure I get it. But your explanation helps put it in 
> perspective. (I'm working on a new UGen)

I think the key idea is that .pmsg is, so far, pretty worthless, 
hahaha.  Though it sounds like you've gotten how they are to work as 
much as there is get.  We'd love to hear about the new UGen, too!

There are a few new ones, mostly out-of-the-box filters, coming in as well.


More information about the chuck-dev mailing list