[PD] libraries in Pd-extended 0.43
Jonathan Wilkes
jancsika at yahoo.com
Wed Dec 15 00:01:53 CET 2010
--- On Tue, 12/14/10, Mathieu Bouchard <matju at artengine.ca> wrote:
> From: Mathieu Bouchard <matju at artengine.ca>
> Subject: Re: [PD] libraries in Pd-extended 0.43
> To: "Jonathan Wilkes" <jancsika at yahoo.com>
> Cc: "PD List" <pd-list at iem.at>, "Hans-Christoph Steiner" <hans at at.or.at>
> Date: Tuesday, December 14, 2010, 4:36 PM
> On Mon, 13 Dec 2010, Jonathan Wilkes
> wrote:
>
> > You're right. I'm an object-o-phile. But do you
> find "Related Objects" troubling-- should it be "Related
> Classes"?
>
> well... yes
>
> > In a lot of situations you need both. For
> something like canvas_class it doesn't make much sense to
> put all the details of "what the class does" in one giant
> help file
>
> Giant help files aren't much of a problem, but it would be
> more appropriate to introduce method-categories (as in
> Smalltalk) in order to avoid the mandatory
> quasi-alphabetical sorting.
>
> (GF sorts them like : bang float grid symbol pointer list,
> then all other names in alphabetical order, then <any>
> at the very end.)
>
> > for instance, to follow your GFDP model, you'd have
> one "see also" section that includes [inlet] (which relates
> to [pd] but not to [table])
>
> The t_class structure of
> [pd]/[table]/array/abstractions/patches is especially hairy.
> If a single t_class acts like it's many classes at once, it
> may make sense to document it as several classes anyway.
> However, pd will still refer you to a single help file for
> all those cases (except abstractions).
Yeah, so currently I have links inside canvas-help.pd to
table-help.pd, pd-help.pd, graph-help.pd, and a special note
about "Put" menu arrays with a link to array-help.pd.
array-help.pd is necessary to have there because triggering the
help patch for the "Put" menu array is so obscure (I wonder if
anyone here even knows what to click to get it.)
>
> The way a single t_class may act like several, is if it
> contains statements such as
>
> if
> (binbuf_getvec(x->te_binbuf)[0]==gensym("thatone")) ...
>
> Then it's looking up which alias has been used for the
> creation and varying the behaviour accordingly. (It could
> also be using multiple creators that store something to
> remember the same info, or have a single creator with
> multiple names, that stores its t_symbol *s in one way or
> another... I'm talking about all cases of a class acting
> like it's several)
>
> I mean that something can be called a class
> documentation-wise even though it might not be the case
> implementation-wise. What's important, then, is to structure
> the thought so that people can get the most out of those
> things, and not to document how the code is really written.
>
> But note that if you have a [table whatever] and a [s
> pd-whatever], you can do dynamic-patching instead of the
> [table], even though the [table] won't save the contents.
> You can try «obj 0 0 inlet» and «obj 0 20 outlet» and
> see that they really add inlets and outlets on a [table]
> object. Thus, in that manner, [inlet] and [outlet] are
> relevant to [table] objects.
That's true, but just because it's possible to do that doesn't mean
that [inlet] and [outlet] are relevant enough to show in the help
patch for [table], any more than showing [list] in the help patch for
[metro].
Also, it doesn't work the other way around-- [tabread], [tabwrite],
etc. are not relevant to [pd].
>
>
> _______________________________________________________________________
> | Mathieu Bouchard ---- tél: +1.514.383.3801 ----
> Villeray, Montréal, QC
More information about the Pd-list
mailing list