Re: Which namespace for a build system?

2004-08-21 Thread Randy W. Sims
khemir nadim wrote:
I'm going to polute witha new top level namespace! PBS::
Don't anyone have any idea of where we should put this type of modules?
Is this a build system for perl modules or a generic build system? Is it 
an application or a library? Is the documentation available; I'd like to 
learn more about it.

Randy.
Devel::
Devel::Build::
Build::
App::BuildSystem
I'd appreciate some input.
Cheers, Nadim.




Re: name for singlethreaded web server framework module

2004-08-21 Thread Randy W. Sims
david nicol wrote:
I am writing a module that provides HTTP interface using select,
for simple web applications without a web-server, and without
POE or other modules.
Configuration will be by mapping paths to coderefs.
Planning to call this cute beastie HTTP::Server::Selecting.
Comments?
I'm not sure how descriptive Selecting is. Maybe HTTP::Server::Simple 
or HTTP::Server::Synchronous ?

Randy.


Re: name for singlethreaded web server framework module

2004-08-21 Thread Nicholas Clark
On Fri, Aug 20, 2004 at 08:50:16PM -0500, david nicol wrote:
 
 I am writing a module that provides HTTP interface using select,
 for simple web applications without a web-server, and without
 POE or other modules.
 
 Configuration will be by mapping paths to coderefs.

I infer from the description that it's going to serve files representing
parallel requests by multiplexing using select().
Will it just serve static content, or also dynamic generated content from
user code? If so, how do you feed that out via select? - non-blocking API,
or just buffer the generated DATA in memory and then feed it out at the
pace dictated by select() and non-blocking IO?

 Planning to call this cute beastie HTTP::Server::Selecting.

because I'm not convinced that this name would give much insight into
the implications of the implementation, and the trade offs they give.

Nicholas Clark


Re: namespace for users and groups

2004-08-21 Thread Kurt Starsinic
On Sat, 21 Aug 2004 21:28:30 +0100, David R. Baird
[EMAIL PROTECTED] wrote:
 I've spent a fair bit of time looking for a generic, groups-based
 system for managing user privileges, but there doesn't seem to be one
 on CPAN. Lots of apps on CPAN have their own, tailor-made systems,
 but they tend to run to a lot of
 
 if $user-is_allowed_to_foo
 do foo stuff
 if $user-is_allowed_to_bar
 do bar stuff
 
 type of things, very specific to their own application.
 
 Maybe I've missed it? Can anyone point me at such a beast?
 
 If not, I've built a groups-based class that I think is pretty
 generic. What I wanted was a hierarchy of groups that can model an
 organisation. Groups contain subgroups, and groups can do whatever
 their subgroups can. The hierarchy and the abilities are
 configurable.
 
 At the moment, I'm calling this Admin::Group, and it has a companion
 Admin::User. But that would mean a new top level namespace, which I
 know is generally resisted. But it does seem to describe what the
 classes do.
 
 An alternative might be the User:: namespace. Maybe User::Admin::User
 and User::Admin::Group?
 
 Any opinions or pointers to similar things?

User, Group, and Admin mean many different things in many
different contexts.  So I would suggest something more specific. 
Before you get there, though, you have to be clear as to which of the
three A's you're dealing with:  access, authorization, and/or
accounting?  If it's authorization, then there are Auth:: and Authen::
namespaces (Authen:: is preferred).  If it's access, then I'm
surprised, because that's usually application-specific. And it seems
clear that you're not talking about accounting, but if you are, then
you are.

Anyway, I recommend that the namespace talk about what purpose the
modules serve, not about some quite ambiguously-named objects that
they operate over.

Also, when you're talking about groups of groups as above, the
more common term of art is accounts and subaccounts.

- Kurt


Re: name for singlethreaded web server framework module (chatty)

2004-08-21 Thread david nicol

Version 0.01 buffers the generated data (including slurped files) and
does not provide a standard CGI execution environment.

I could just brand it.  Web server names are pretty opaque, at
least Apache and Boa are.  When it's done (hopefully today, this is
for a project due yesterday) I could put it on CPAN as

TipJar::webserver

although that's misleading too -- nobody uses TipJar::fields as far
as I can tell. (And nobody uses tipjar.com because it's down.)

Maybe I should rerelease TipJar::fields as something else, although
David M. Lloyd's enum::fields is arguably better and predates it. Enough
of this digression.

Better to be a team player and release

HTTP::Server::Singlethreaded

which would invoke the correct class of considerations for those whose
initial referent for Selecting is not the Berkeley socket library.

Does Perl have non-blocking file IO yet? I know Uri Guttman requested
non-blocking file IO some time ago.  I've thought about serving larger
static files with

   open my $OutBound, cat $filename|;

and incorporating these pipes into the multiplexion, but this approach
(1) is not portable to places where cat(1) is not installed and (2)
requires more complex multiplexion than is needed for The Task At Hand
and is therefore deferred according to the best practices of Extreme
Programming.


On Sat, 2004-08-21 at 13:52, Randy W. Sims wrote: 
 I'm not sure how descriptive Selecting is. Maybe HTTP::Server::Simple 
 or HTTP::Server::Synchronous ?


On Sat, 2004-08-21 at 14:01, Nicholas Clark wrote:
 I infer from the description that it's going to serve files representing
 parallel requests by multiplexing using select().
 Will it just serve static content, or also dynamic generated content from
 user code? If so, how do you feed that out via select? - non-blocking API,
 or just buffer the generated DATA in memory and then feed it out at the
 pace dictated by select() and non-blocking IO?

 because I'm not convinced that this name would give much insight into
 the implications of the implementation, and the trade offs they give.


-- 
david nicol
  Someday, everything's going to be different
   when I paint my masterpiece.