>As I have long
> seen, there can be lots of noise on pd-list but little outcome. I'd
> rather not see it again here on pd-dev.
Though it is useful to have discussions on the architecture.

As an off-topic aside, for the memory-allocation perspective/management I 
wonder how difficult it would be to allocate on non-realtime threads with some 
'finished' queue/callback to send back to the realtime one? (or just 
non-realtime operations in general..)
Object creation being more realtime-friendly would be better for live patching.

Also to me the 'backends as plugins' idea seems nice, whether for GUI or audio.
I guess if libpd were used the realtime system would be a library itself, pd 
container process could manage and orchestrate messages/pointers between the 
different components whether audio backends or gui or PD (libpd) itself.

-seb

Date: Mon, 30 Sep 2024 21:56:51 +0200
From: Christof Ressi <i...@christofressi.com>
Subject: [PD-dev] Re: gtk front end for Pd?
To: Dan Wilcox <danomat...@gmail.com>, Miller Puckette
    <mpucke...@cloud.ucsd.edu>, Antoine Rousseau <anto...@metalu.net>
Cc: pd-dev <pd-dev@lists.iem.at>
Message-ID: <731f731d-f127-4ba3-9d17-4d81ab536...@christofressi.com>
Content-Type: multipart/alternative;
    boundary="------------wD0i6FUdzZrSWYCHnQzdmL6B"

> 2. (Please don't take this personally.) I am a little disappointed 
> that many initial responses to Millers mail were more "you should have 
> done it this way" as opposed to "wow, we are super happy you are 
> interested in this and also spend time making a preliminary tech 
> demonstration".

Sorry if I came across as too criticial. I've realized this myself and 
tried to make it clear in my last mail that I'm actually very excited 
about Millers initiative!

> 3. Comparisons are useful but Pd is not SuperCollider. That being 
> said, there are definitely technical solutions to consider form SC but 
> I wouldn't want that to overshadow the discussion and turn into "lets 
> redo Pd core into SC core." ;) 

I certainly don't want to turn Pd into SC. The reason why I keep 
mentioning SC is because a) it's the other big open source computer 
music language and b) I'm very familiar with the source code. I'm also a 
little bit active in SC development and I often ask them to look at how 
certain things are handled in Pd. There is so much to learn from each other!

> 5. IHMO I'd also like people to consider libpd. In a dream going way 
> back to PdCon 2026 in NYC, I imagined a future where Pd vanilla and 
> various forks all shared the same Pd core through libpd with GUI 
> handling, customization, etc implemented in some modular way.
I think we share the same vision after all.

> This is actually how Pd Party and Pd Droid Party work... we intercept 
> the messages sent to the widget via send/receive names and simple 
> respond to accordingly. In this case, there is a separate GUI tree of 
> a sort, but it works fine without sending any actual input messages to 
> the core. Visuals are implemented via CoreGraphics calls:
Yeah, I can remember that you've shown me this and I absolutely think it 
goes into the right direction.

> In fact, pretty much *all* modern UI frameworks do this and using it 
> builds down to implementing a callback for mouse enter/exit, move, 
> clicked, etc. 
Exactly :)
> Same for touch events (which would be a *very* good idea to add 
> handling of to Pd.
+1000

On 30.09.2024 19:12, Dan Wilcox wrote:
> How'd y'all,
>
> (I will try to keep this short, since I find I really don't read 
> beyond a couple of paragraphs when people start writing long treatises...)
>
> 1. Miller I am happy you spent some time looking into this. It is IMO 
> an important direction we have to all consider for the project's future.
>
>
>
> 3. Comparisons are useful but Pd is not SuperCollider. That being 
> said, there are definitely technical solutions to consider form SC but 
> I wouldn't want that to overshadow the discussion and turn into "lets 
> redo Pd core into SC core." ;)
>
> 3. IOhannes + Giulio etc did a bunch of work with the refactor but can 
> we admit that has stalled? Perhaps a different approach is warranted?
>
> 4. I think Miller's demo code is pretty compact... and probably easy 
> to modify to prove an alternate technical approach. ;) As I have long 
> seen, there can be lots of noise on pd-list but little outcome. I'd 
> rather not see it again here on pd-dev.
>
> 5. IHMO I'd also like people to consider libpd. In a dream going way 
> back to PdCon 2026 in NYC, I imagined a future where Pd vanilla and 
> various forks all shared the same Pd core through libpd with GUI 
> handling, customization, etc implemented in some modular way. The 
> dream was that we could *all* leverage the work across various places 
> to benefit everyone and make all of this more sustainable. (ie. I'd 
> rather make work *with* Pd than have Pd my *work*).
>
> 6. I think we need a video call on this soon!
>
> ---
>
> And now to confuse the thread even more, I will to chime in here:
>
>> On Sep 30, 2024, at 3:16 PM, pd-dev-requ...@lists.iem.at wrote:
>>
>> Suppose we replace "draw X, Y,Z" with "draw button".  I think this then
>> spins out in either of two possible ways:
>>
>> (1) the "button" widget on the GUI side now takes care of mouse-hit
>> detection and making itself flash (and eventually widgets with text can
>> grab focus, handle copy/paste, etc).  In this case the GUI widget has to
>> maintain a connection with its corresponding object in Pd. This gets
>> very complicated when, for instance, changing text causes inlets or
>> outlets to appear, which perhaps on the Pd side the text is getting
>> hammered by messages from elsewhere at the same time. Distributed
>> database management, anyone?
>
> This is actually how Pd Party and Pd Droid Party work... we intercept 
> the messages sent to the widget via send/receive names and simple 
> respond to accordingly. In this case, there is a separate GUI tree of 
> a sort, but it works fine without sending any actual input messages to 
> the core. Visuals are implemented via CoreGraphics calls:
>
> https://github.com/danomatika/PdParty/tree/master/src/gui
>
> Honestly, the situation on iOS is *very* easy since the UIKit layout 
> engine handles views within views and hit testing for you. Same for 
> AppKit on macOS. In fact, pretty much *all* modern UI frameworks do 
> this and using it builds down to implementing a callback for mouse 
> enter/exit, move, clicked, etc. Same for touch events (which would be 
> a *very* good idea to add handling of to Pd.
>
>
> --------
> Dan Wilcox
> danomatika.com <http://danomatika.com>
> robotcowboy.com <http://robotcowboy.com>

***************************************

 ---
pd-dev@lists.iem.at - the Pd developers' mailinglist
https://lists.iem.at/hyperkitty/list/pd-dev@lists.iem.at/message/QKSHVB5D7E5QCZIV2P7XFFGR7O3QTJA4/

Reply via email to