[PD] style guide idea: [send foo] versus [; foo(
Hans-Christoph Steiner
hans at eds.org
Sat Mar 21 22:47:41 CET 2009
On Mar 21, 2009, at 3:42 AM, Matt Barber wrote:
>> Ah, ok, I get it, the text in the msg boxes is basically the same
>> as the
>> text in the qlist file. That makes sense, and in the context of
>> [qlist] I
>> think it makes sense to teach about [; foo( sends. But I don't
>> think that
>> [qlist] is an essential object, especially for newbies. I am not
>> saying to
>> avoid it, I have covered it. But personally, I almost never use
>> it. I find
>> it easier to use [textfile] and write my own timing code. You can
>> be a
>> pretty advanced Pd user and not have to use semi-colons in message
>> boxes.
>>
>> IMHO, semi-colons in messages boxes are no doubt useful, but they
>> are not
>> essential. In the interests of spreading out the learning of the
>> concepts
>> in Pd into as many stages as possible, I think it makes sense to
>> avoid using
>> semi-colons in messages boxes except in contexts that they are
>> indispensible. So when learning about [qlist], for example, semi-
>> colons in
>> message boxes should definitely be covered.
>>
>> Outside of those contexts, I think that overall, Pd users will be
>> better
>> served by avoiding their use.
>
>
> I would have a hard time signing up for this program. A lot of things
> in Pd (and any programming language) are useful but inessential.
>
> IMO the send/receive binding in messages is essential if you want to
> understand how Pd is organized. A lot depends on the kind of student
> you're working with -- many of them don't feel comfortable with things
> unless they see some kind of "big picture" -- for those students, they
> would be comforted by the fact that message boxes can store "send"
> messages, as well as [qlist] files, the text in .pd files, etc.
> Eventually students will need to learn this stuff, so the occasional
>
> | ; /
> | pd dsp 1 \
>
> serves as a handy reminder rather than a detriment to readability.
I agree that we should be teaching it, but if you've never done any
programming whatsoever, and haven't learned about that syntax in Pd,
then it is definitely a hinderance to learning Pd. There are lots of
useful concepts in Pd that are not trivial to learn. If the newbie
can be more gradually introduced to them, and have a cycle of attempts
and successes, then they will be more willing later on to struggle to
get something working.
If the newbie is hit with a stack of new concepts all at once, it
makes it harder to have those successes in the beginning. I also
agree with you that once you are learning about messages and [qlist]
that having reminders is useful. But until then they often are a
major stumbling block for newbies.
So I don't think everyone needs to avoid their use, but I do think
that in the documentation and reference, we should avoid their use
except in the contexts where they are directly relevant. A great
example is A04.line2.pd. The three big message boxes are pretty
impenetrable for someone with no programming experience. Compare it
to the [trigger bang anything bang] on the lower right.
And one last little story that I just remembered: I didn't realize
that [send pd] was even a possibility until recently. I had always
seen [; pd dsp 1( and figured messages to pd had to be sent that way.
.hc
-------------- next part --------------
A non-text attachment was scrubbed...
Name: A04.line2.pd
Type: application/octet-stream
Size: 2759 bytes
Desc: not available
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20090321/fef9c25f/attachment.obj>
-------------- next part --------------
> Part of the problem is that [; foo( is a misnomer. It's
>
> | ; /
> | foo \
>
> This is the only way the syntax is clear.
>
> My vote for style goes for which makes the most sense in (often very
> complex) context.
>
> Matt
----------------------------------------------------------------------------
As we enjoy great advantages from inventions of others, we should be
glad of an opportunity to serve others by any invention of ours; and
this we should do freely and generously. - Benjamin Franklin
More information about the Pd-list
mailing list