Re: A common event loop

2000-09-23 Thread Chaim Frenkel

> "DLN" == David L Nicol <[EMAIL PROTECTED]> writes:

DLN> This too is something that would be very easy to do in
DLN> everything-is-an-exception world.  All events throw "EVENT-whatever"
DLN> exceptions, and there you are.

That is a nasty and expensive way of doing something 'simple'.

And I can't imagine how this would work. Any statement could be interupted
with an exception, but there is no mechanism to restart.

This is just plain wrong.


-- 
Chaim FrenkelNonlinear Knowledge, Inc.
[EMAIL PROTECTED]   +1-718-236-0183



rfc47 (was Re: A common event loop)

2000-09-19 Thread Uri Guttman

> "DLN" == David L Nicol <[EMAIL PROTECTED]> writes:

  DLN> This too is something that would be very easy to do in
  DLN> everything-is-an-exception world.  All events throw "EVENT-whatever"
  DLN> exceptions, and there you are.

and how do you dispatch on those events? an event loop should allow for
registration of callbacks so you don't have to write your own
dispatcher. 

see rfc47 for my mega outline of async (to be renamed advanced) IO which
covers event loops.

i plan to update that this week with several smaller rfcs.

uri

-- 
Uri Guttman  -  [EMAIL PROTECTED]  --  http://www.sysarch.com
SYStems ARCHitecture, Software Engineering, Perl, Internet, UNIX Consulting
The Perl Books Page  ---  http://www.sysarch.com/cgi-bin/perl_books
The Best Search Engine on the Net  --  http://www.northernlight.com



Re: A common event loop

2000-09-19 Thread David L. Nicol



This too is something that would be very easy to do in
everything-is-an-exception world.  All events throw "EVENT-whatever"
exceptions, and there you are.

-- 
  David Nicol 816.235.1187 [EMAIL PROTECTED]



Re: A common event loop

2000-09-19 Thread Peter Scott

At 03:40 AM 9/19/00 -0400, Michael G Schwern wrote:
>As I understand it, there is currently no agreed upon common event
>loop architecture in Perl.  This means that if two event-based modules
>are used together (say, Net::IRC and POE) the one who's main loop
>starts up first will win.
>
>So the question I put to you all is, would it make sense for Perl to
>have a common event loop from which all other modules can then draw,
>thus avoiding the current state of conflict?

Absolutely.

The architecture of Tk applications will change considerably, for the better.

--
Peter Scott
Pacific Systems Design Technologies




Re: A common event loop

2000-09-19 Thread Uri Guttman

>>>>> "MGS" == Michael G Schwern <[EMAIL PROTECTED]> writes:

  MGS> As I understand it, there is currently no agreed upon common event
  MGS> loop architecture in Perl.  This means that if two event-based modules
  MGS> are used together (say, Net::IRC and POE) the one who's main loop
  MGS> starts up first will win.

  MGS> So the question I put to you all is, would it make sense for Perl to
  MGS> have a common event loop from which all other modules can then draw,
  MGS> thus avoiding the current state of conflict?  Or will a stable
  MGS> threading implementation provide the equivalent?

i have a rfc on that in the works. it has been discussed and many people
want such a beast. it is best integrated into the core as it has to have
clean delivery of events and signals.

threads can't provide the same support as events, especially for stuff
like tk or stem (my new product). events and threads can live together
in one process as well.

uri

-- 
Uri Guttman  -  [EMAIL PROTECTED]  --  http://www.sysarch.com
SYStems ARCHitecture, Software Engineering, Perl, Internet, UNIX Consulting
The Perl Books Page  ---  http://www.sysarch.com/cgi-bin/perl_books
The Best Search Engine on the Net  --  http://www.northernlight.com



A common event loop

2000-09-19 Thread Michael G Schwern

As I understand it, there is currently no agreed upon common event
loop architecture in Perl.  This means that if two event-based modules
are used together (say, Net::IRC and POE) the one who's main loop
starts up first will win.

So the question I put to you all is, would it make sense for Perl to
have a common event loop from which all other modules can then draw,
thus avoiding the current state of conflict?  Or will a stable
threading implementation provide the equivalent?


PS This seemed like the right place to post this, other than
perl6-language which is stretched as it is.

-- 

Michael G Schwern  http://www.pobox.com/~schwern/  [EMAIL PROTECTED]
Just Another Stupid Consultant  Perl6 Kwalitee Ashuranse
Yet one of these kittens is not prepared to have a good time.  It
stands alone, away from the crowd.  Its your kind of kitten.  And now
the time has come to climb into that car and shake the paw of destiny.