On Thu, Nov 29, 2001 at 07:48:57PM +0100, Torvald Riegel wrote:
> hi,
> 
> i'd liek to know what you think. it is related to the object layer somehow.
> 
> it seems as we agree on the fact that we need more information about
> objects, methods, ... than what we can get out of perl subs or ISA.
>
> there are two main directions:
> 
> - explicitely declare it:
> done in POE::Session somehow. provide the needed data trough perl vars,
> as constructor parameters or set it later through special methods.

Probably done in POE::Object or POE::Component or something.  I'd like
to see the object layer get away from Session as the unit of
interaction.  Sessions just aren't built for it, and I don't see a
reason to make them into it yet.

Maybe I'll figure it out in the spring and it'll all be good.

Explicit declarations in the Component constructor:

 This component takes these public events.
 This component emits these public events.

Something, perhaps session relationships, connects emitted events to
accepted events.


> - more perlish:
> try to encode it in perl attributes, maybe use source code filters. a lot
> of possible ways ...

That's certainly one way.  As long as it doesn't interfere with POE's
core, the parts that aren't the "object layer", I could accept it.

POE has pre-5.6 users, and I don't want to break the parts they're
already using.  That doesn't mean new parts can't use present-day
features, though.

> that's not a detailed discussion of pros and cons of course, i just wanted
> to start a thread with this post :)
> and it isn't really important, however developers are attracted by
> comfortable environments...
> 
> a solution might be to use the explicit approach now (development stage
> anyway) and maybe switch to the second way when Perl6 is out and
> hopefully provides some interesting features ...

A third solution might be to create one or more design tools with
options to generate explicit method attributes or perlish ones.

-- Rocco Caputo / [EMAIL PROTECTED] / poe.perl.org / poe.sourceforge.net

Reply via email to