On Fri, Aug 09, 2002 at 08:30:00AM -0400, Richard Soderberg wrote:
> On Friday, August 9, 2002, at 07:42  AM, [EMAIL PROTECTED] 
> wrote:
> 
> >What I meant was something different. A directory in which components 
> >can
> >publish their services can be helpful, like you said.
> >The interfaces I'm talking about are real roles that components claim 
> >to be
> >able to play. So "client" means it can play a client in the way that
> >client was declared before (the protocol, which events are sent, ..., 
> >see
> >below). Very similar to the interface that is spoken by the whole 
> >component,
> >as outlined by the Emit: or "> .." "< ..." statements in your examples.
> 
> Which allows components to deregister themselves as necessary -- say, 
> when you don't have any listeners connected, or if the service isn't 
> configured, there's no point in being listed as a "music broadcaster" 
> service (for example).

Added:

  === Reloadable Code ===

  Within reason, POE should be able to reload the code for an active
  system without shutting it down.

  Role or interface based linking allows programs to dynamically load
  and unload their code as needed.  When nothing actively requires a
  role to be fulfilled, the code or class that implements that role can
  be released.  When it is needed again, it can be loaded from disk.

  We can also serve code requests across a network.  A program may need
  a specific role fulfilled, and it could acquire the code to perform
  that role from a trusted network server.

> I like the registry idea, too.  Does that mean there'll be a component 
> exposing a service called "component registry"?

Roles would probably be included in a component's description.  They
would be managed at a relatively low level, similar to how aliases are
managed in POE now only with a fuller interface.

I've already stated that I'm against exposing raw, low-level
interfaces as components.  Components should do more than the built-in
features, if only to help justify the overhead of passing messages
between them.

I'm sure it won't stop someone from writing such a component, but
that's my position on the matter.

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

Reply via email to