fons at kokkinizita.net fons at kokkinizita.net
Tue Nov 24 17:02:05 UTC 2009

On Tue, Nov 24, 2009 at 11:12:59AM -0500, Paul Davis wrote:

> This just isn't true on "bare" unix systems, where the insistence on
> choice and flexibility and "developer driven" approaches to almost
> everything have ruled out such a common core.

There are at least to separate aspects to this problem.

1. Almost all GUI toolkits mix up a few things that should
   remain well separated:

   - Getting X11 events,
   - Handling X11 events,
   - Creating a framework for messaging (events + data)
     between threads, and if you are lucky a RT-safe API
     for this or at least part of it,
   - Creating the main loop (which if you separate out
     the three above, becomes a trivial thing).

   A well designed GUI toolkit should do only the first
   two and be able to use whatever messaging system and
   event loop.
2. Almost all toolkits try to be cross-platform. Which
   means they will translate X11 events and other data
   structures from/into their 'portable' format. That's
   OK as if they would also provide these translations
   as separate functions which then could be used at the
   interface between a host and a plugin using different

The only reason I can see why most GUI toolkits do not
provide the required modularity is that it would complicate
their 5-line 'hello world in a window' demo programs, and
that is considered bad marketing. The fact that such trivial
demos are not representative of real-life applications, let
alone those that do include real-time audio processing, is
not a point, the user will discover that only much later when 
he's already firmly hooked into a particular toolkit.



Io lo dico sempre: l'Italia è troppo stretta e lunga.

More information about the Linux-audio-dev mailing list