[PD] Idiomatic Pd

Luke Iannini lukexipd at gmail.com
Fri Aug 8 08:36:48 CEST 2008

On Sun, Aug 3, 2008 at 2:03 AM, Luke Iannini <lukexipd at gmail.com> wrote:
> Sorry all for my silence!! I've been deadly busy this week and it
> looks like it will continue for another few days.  But, rest assured,
> my obsession cannot be squashed and we'll need plenty of criticism to
> make a useful guide, so fire away :).
> Everyone's suggestions are wonderful so far.  I'm so glad to have you
> all contributing.  I'm going to start by organizing this thread by
> categories (as soon as I get the wikipage issue figured out, below),
> and then it should be pretty clear which are most chaotic (in a good
> way) and which need more input.
> On Tue, Jul 29, 2008 at 10:35 AM, Hans-Christoph Steiner <hans at eds.org> wrote:
>> Can I suggest using the MoinMoin wiki syntax?  IMHO the python wikis
>> all have weak syntax compared to MediaWiki, but MoinMoin is the
>> closest to MediaWiki, which is a widely used and relatively easy to
>> use syntax.  It is also what is used in most of the rest of the
>> 'docs' section. To use MoinMoin, the page has to be a "wiki page".  A
>> regular Plone "page" doesn't allow it for some reason.
> Hey, I am getting:
> Site error
> This site encountered an error trying to fulfill your request. The errors were:
> Error Type
> BadRequest
> Error Value
> The id "outline" is reserved.
> Request made at
> 2008/08/03 10:45:39.063 GMT+2
> when I try to add a wiki page to the Style Guide folder.  Could you or
> IOhannes try, maybe?
I just discovered that you fixed it IOhannes, thanks very much!  Back
to work then.

> Best
> Luke
>> Also, to make an index page for that folder, create a page called
>> "FrontPage" or "index_html" IIRC.  I think that would be a good place
>> to lay out all of the things that are relevant to the style guide,
>> like a survey of programming elements.  Then people can make their
>> own style pages for things that are a matter of opinion.  And
>> hopefully at the end, we can come up with something unified.
>> .hc
>> On Jul 29, 2008, at 2:30 AM, Luke Iannini wrote:
>>> Okay, here it is:
>>> http://puredata.info/docs/style-guide
>>> On Mon, Jul 28, 2008 at 1:39 PM, Hans-Christoph Steiner
>>> <hans at eds.org> wrote:
>>>> I think a style guide is a great idea.  There have been some
>>>> discussions along these lines in the past.  I'd say just start a
>>>> "wiki folder" on puredata.info in the /docs/ section and edit it up.
>>>> Something like /docs/style-guide/ I think that the main page could
>>>> lay out all of the possible realms of style, like dollar arguments,
>>>> abstractions, subpatches, inlets/outlets, trigger, etc.  Then the
>>>> next step people can create sub-pages that outline all of their
>>>> styles.  Then ultimately, things would be organized into a single
>>>> style-guide.
>>>> .hc
>>>> On Jul 27, 2008, at 9:34 PM, Luke Iannini wrote:
>>>>> There are some amazing sets of abstractions being released recently,
>>>>> which has served to highlight the many extant styles of patching.  I
>>>>> was wondering if there was interest in establishing a set of
>>>>> guidelines for patching in the vein of PEP 8 for Python; I've found
>>>>> that document to be very relaxing as it is a standardized
>>>>> approach to
>>>>> OCD.  More seriously, it greatly helps when reading other people's
>>>>> code or collaborating.
>>>>> http://www.python.org/dev/peps/pep-0008/
>>>>> The only one I have seen so far for Pd covers best practices for
>>>>> layout.  I'd want to include that, but also codify naming,
>>>>> arguments,
>>>>> common idioms, and so on.
>>>>> I've begun to collect some of my practices to start things off.
>>>>> I was
>>>>> hoping we could all lazy-vote the document together in this
>>>>> thread and
>>>>> I'll then compile it into a PdPedia/Pd.info document.  So, feel free
>>>>> to object to or replace my propositions.
>>>>> Style:
>>>>> * If giving $0 as an argument to an abstraction, it is always
>>>>> first in
>>>>> the argument list [1]
>>>>> * * When possible, pass parent arguments in numeric order, like
>>>>> [child
>>>>> $0 $1 $2 other1 other2] etc.
>>>>> * Sends and Receives are written in camelCase, with "R" appended to
>>>>> complementary receives (e.g. in GUIs, $0mySlider for the send and
>>>>> $0mySliderR for the receive)
>>>>> * When prepending $0 to a symbol, only add a "-" to separate it from
>>>>> another number, like [r $0-1stSend].  Otherwise the symbol should
>>>>> immediately follow, like [r $0mySend].
>>>>> * When working with stereo, Left and Right pairs are written with Le
>>>>> and Ri appended (to distinguish them from an R denoting "receive",
>>>>> above)
>>>>> Programming recommendations
>>>>> * To invert a toggle, use [== 0]
>>>>> * Use the loadbang of the parent of both abstractions to initialize
>>>>> two or more interdependent abstractions
>>>>> [1] I think of this like emulating the "self" convention in Python
>>>>> And so on...
>>>>> Cheers
>>>>> Luke
>>>>> _______________________________________________
>>>>> Pd-list at iem.at mailing list
>>>>> UNSUBSCRIBE and account-management -> http://lists.puredata.info/
>>>>> listinfo/pd-list
>>>> ---------------------------------------------------------------------
>>>> ---
>>>> ----
>>>> Terrorism is not an enemy.  It cannot be defeated.  It's a tactic.
>>>> It's about as sensible to say we declare war on night attacks and
>>>> expect we're going to win that war.  We're not going to win the war
>>>> on terrorism.        - retired U.S. Army general, William Odom
>>>> _______________________________________________
>>>> Pd-list at iem.at mailing list
>>>> UNSUBSCRIBE and account-management -> http://lists.puredata.info/
>>>> listinfo/pd-list
>>> _______________________________________________
>>> Pd-list at iem.at mailing list
>>> UNSUBSCRIBE and account-management -> http://lists.puredata.info/
>>> listinfo/pd-list
>> ------------------------------------------------------------------------
>> ----
>> Looking at things from a more basic level, you can come up with a
>> more direct solution... It may sound small in theory, but it in
>> practice, it can change entire economies.     - Amy Smith
>> _______________________________________________
>> Pd-list at iem.at mailing list
>> UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list

More information about the Pd-list mailing list