so it would pay to fill out the header.
Yeah, all API functions in "m_pd.h" should really have minimal documentation (preferrably doxygen).

However, I'm not sure that "m_pd.h" is the place for documenting the inner workings of Pd... I think the official manual would be a more natural place, as it already serves this purpose.

Anyway, once these things are written down somewhere, we can just post a link whenever someone asks about them :)

Christof

On 23.08.2023 17:20, Dan Wilcox wrote:
Joseph: Do not be embarrassed. Understanding the engine is relatively opaque IMO and info is scattered in different places.

Christof: IMO these kinds of important details should really by in m_pd.h. The API is pretty stable at this point, so it would pay to fill out the header. This was my approach with libpd:

https://github.com/pure-data/pure-data/blob/master/src/z_libpd.h

We originally had docs for libpd on a wiki page but once things stabilized I did the painful, but IMO necessary, step to move it into minimal header documentation. This also made it trivial to include basic docs when libpd was integrated into the pure-data repo.

On Aug 23, 2023, at 5:05 PM, pd-dev-request@lists.iem.at wrote:

Message: 1
Date: Wed, 23 Aug 2023 17:04:41 +0200
From: Christof Ressi <info@christofressi.com>
To: pd-dev@lists.iem.at
Subject: Re: [PD-dev] why must one never send a message from a perform
routine ?
Message-ID: <7a96c4d0-10ec-1d18-b016-df0304498623@christofressi.com>
Content-Type: text/plain; charset="utf-8"; Format="flowed"

Glad that I could help! Very little of this is really documented 
(accurately). Personally, I figured this out by reading the source code.

Ideally, we should improve the official documentation in 
http://msp.ucsd.edu/Pd_documentation/x3.htm#s1.0. Some things are 
outdated, misleading or just plain wrong (in particular the section 
"audio buffer size and block size"). I just put this on my 
(ever-growing) TODO list.

Christof

--------
Dan Wilcox
@danomatika
danomatika.com
robotcowboy.com