[PD] [#expr] (was: jMax)

Jonathan Wilkes jancsika at yahoo.com
Sun Sep 26 23:41:44 CEST 2010



--- On Sun, 9/26/10, Mathieu Bouchard <matju at artengine.ca> wrote:

> From: Mathieu Bouchard <matju at artengine.ca>
> Subject: Re: [#expr] (was: jMax)
> To: "Jonathan Wilkes" <jancsika at yahoo.com>
> Cc: pd-list at iem.at, gridflow-dev at artengine.ca
> Date: Sunday, September 26, 2010, 10:21 PM
> On Sun, 26 Sep 2010, Jonathan Wilkes
> wrote:
> 
> > For some reason, [expr] has random, which takes two
> arguments, but no rand.
> 
> That's because it's only based on functions that are
> already in GridFlow, and there is no such random() in
> GridFlow. I already fudged quite a few things in [#expr]
> though, so I might be able to fudge this one. At this point,
> the only ops I can import directly into [#expr] are the ones
> that already exist in [#]. Maybe it's just easier to add
> 'random' to [#].
> 
> > I noticed that [#expr] (i.e., with no args) doesn't
> create.
> 
> With the current grammar used by [#expr], empty expression
> doesn't parse. So I just set the expression "0" as the
> default args of [expr] when there are no args at all.
> 
> > If I do [#expr max(1,3)] and send a float to the inlet
> it crashes Pd. (Same with other functions)
> 
> [#expr] without any $f1-style variables has an empty
> 'inputs' array but try to assign to inputs[0] anyway.
> 
> > What are rem, cmp
> 
> 'rem' is [expr $f1 % $f2]
> 'cmp' is [expr $f1<0 ? -1 : $f1>$f2]
> 
> > c2p and p2c?
> 
> They never were in. It was a mistake. Those are 'vecops',
> which means that each of them take as inputs two pairs of
> numbers and output one pair. But [#expr] doesn't support
> grids yet, so, it didn't make any sense whatsoever to
> include them at this point.
> 
> > Seems like this is a bigger problem, because most of
> the time when I use send/receive, IEMGUIs, or [value] in an
> [expr]-less context I am also using $0-foo as the most
> common case.
> 
> It sounds like "$0-" would make a good default prefix,
> then, especially with the number of people using it (though
> a few people use different conventions).
> 
> > So I think your reasoning for not wanting $0 "in your
> face" in a complex formula also extends quite naturally to
> Pd in general. Anytime I use [s $0-a] I'd rather write [s a]
> and have it be local by default.
> 
> Yeah, but the way Pd is made, it's too late, we can't
> change this, or we have to change pd_bind and all the
> externals that use receive-symbols.
> 
> Then the only way out is to make individual solutions
> whenever "$0-" gets too annoying. For example, [receives]
> allows you to write something like [r $0-a] [r $0-b] [r
> $0-c] as [receives $0- a b c] which outputs symbol a or
> symbol b or symbol c by the right-outlet just before
> outputting the received message by the left-outlet.
> 
> see http://gridflow.ca/help/receives-help.png

Thanks, I'll have a look at that.

> 
> I could be making more classes like that if you want.
> 
> 
> _______________________________________________________________________
> | Mathieu Bouchard ------------------------------ Villeray,
> Montréal, QC


      



More information about the Pd-list mailing list