Lisp HUG Maillist Archive

Collector Panes

I think the point I was trying to make in the last posting was that, by putting responsibility for executing in the correct thread on the user, that implies a level of detailed system and architecture knowledge that would not ordinarily be known to users, or easily forgotten after a few years, especially on something as ubiquitous as Streams. (hence the question about Pane process or Editor process?)

I had a similar situation arise when I wrote the interface to Aquaterm. All calls to Aquaterm absolutely had to take place on a special thread. But rather than force that upon the user, I made sure that all the primitives available to the user were instrumented to take care of this themselves.

If I lived in a perfect world, that would be the case for Streams, certainly, and also for all CAPI primitives that are ordinarily user accessible. We are quite far removed from the design of CAPI and there are many details that we simply wouldn't know about. This is all the more critical when CAPI mutates in future versions, or when there are gross differences in operational characteristics among the various platforms, e.g., Windows, OS/X, Linux.


David McClain
Chief Technical Officer
Refined Audiometrics Laboratory
4391 N. Camino Ferreo
Tucson, AZĀ  85750

email: dbm@refined-audiometrics.com
phone: 1.520.390.3995
web: http://www.refined-audiometrics.com
Skype: dbmcclain


Re: Collector Panes

On Wed, 8 Aug 2007 07:06:17 -0700, David McClain <dbm@refined-audiometrics.com> wrote:

> I think the point I was trying to make in the last posting was that,
> by putting responsibility for executing in the correct thread on the
> user, that implies a level of detailed system and architecture
> knowledge that would not ordinarily be known to users, or easily
> forgotten after a few years, especially on something as ubiquitous
> as Streams. (hence the question about Pane process or Editor
> process?)
>
> I had a similar situation arise when I wrote the interface to
> Aquaterm. All calls to Aquaterm absolutely had to take place on a
> special thread. But rather than force that upon the user, I made
> sure that all the primitives available to the user were instrumented
> to take care of this themselves.
>
> If I lived in a perfect world, that would be the case for Streams,
> certainly, and also for all CAPI primitives that are ordinarily user
> accessible. We are quite far removed from the design of CAPI and
> there are many details that we simply wouldn't know about. This is
> all the more critical when CAPI mutates in future versions, or when
> there are gross differences in operational characteristics among the
> various platforms, e.g., Windows, OS/X, Linux.

FWIW, I fully agree with this.  I once had significant problems trying
to port a CAPI app from Windows/Linux to OS/X because of exactly these
reasons - what should happen in which thread - and I eventually gave
up.  I hope that one of the next releases will shield us from these
issues.

Edi.


Updated at: 2020-12-10 08:45 UTC