Organization of standard and 3rd party libraries

Do you think Ruby’s standard library would be better if it was
organized more categorically? Might it, in turn, encourage 3rd party
library developers to categorize their libraries better as well? AFAIK
net/ is the only categorized set of libs in the standard lib and
Austin is one of the very few who religiously organizes his libraries
in this manner.

Is categorization a good idea, or a waste of time?

T.

On Dec 20, 2007 1:24 PM, Trans [email protected] wrote:

Do you think Ruby’s standard library would be better if it was
organized more categorically? Might it, in turn, encourage 3rd party
library developers to categorize their libraries better as well? AFAIK
net/ is the only categorized set of libs in the standard lib and
Austin is one of the very few who religiously organizes his libraries
in this manner.

Is categorization a good idea, or a waste of time?
A good idea I believe, but only if it comes naturally. I have no idea
if categories could be applied already, maybe the SL is just not big
enough right now…
I believe that it might indeed be a nice thing for 3rd party
developers to have entry points into a tree.
I imagine things like
require “extensions/facets…”
or
require “text/ruport”
or
require “crazy/labrador/” :wink:

maybe one could peek over to Python or Perl and steal some ideas ;).

Cheers
Robert

T.

http://ruby-smalltalk.blogspot.com/


All truth passes through three stages. First, it is ridiculed. Second,
it is violently opposed. Third, it is accepted as being self-evident.
Schopenhauer (attr.)

On Dec 20, 7:54 am, “Robert D.” [email protected] wrote:

if categories could be applied already, maybe the SL is just not big
maybe one could peek over to Python or Perl and steal some ideas ;).
I see it the other way around:

require “facets/extensions/…”
require “ruport/text/…”
require “labrador/crazy/…”

Whereby the first name represents a project/package and the rest
indicates the categories. Ruby itself has no sub-namespace, of course.
That stands to reason as it is all “toplevel”. What would be
interesting then is to be able to “include” a namespace. Ie. Something
like…

use “ruport”

then

requre ‘text/…’

But that’s not really the main point. Just wondering about
categorization in general. Unlike the Perl, where CSPAN provides the
incentive to do so, the Ruby community doesn’t seem to do much at all
–and really there seems to be no standard ideas to speak of on the
matter. For example, I recently talked to a maintainer of the Text
project about perhaps a merger with my English project. His response
was that he felt certain libs belonged to the Text namespace and
others to the English namespace. But that’s misconstrued IMO. I’ve
never thought of English as anything more than a project name. By
Tim’s reasoning it would mean he has taken ownership of the entire
Text category. Which is clearly silly. So that’s why I think
“{package}/{catagory}/…” makes sense.

T.

On Dec 20, 2007, at 3:32 PM, Trans wrote:

libraries
require “extensions/facets…”
require “ruport/text/…”
then
others to the English namespace. But that’s misconstrued IMO. I’ve
never thought of English as anything more than a project name. By
Tim’s reasoning it would mean he has taken ownership of the entire
Text category. Which is clearly silly. So that’s why I think
“{package}/{catagory}/…” makes sense.

T.

I think this concept of <package_name>/<category_name> is a very good
idea. It does help to encapsulate things in a logical way.
As for other people’s projects conforming…
unless something happens with ruby and gems on this kind of thing
(including adding some sort of namespace) you’re likely to see
resistance from many people.
Many people are protective and sensitive about their libraries. Even
if it is open source they want control.
Some folks are more willing to let the software take on its own
existence.

On Dec 22, 2007 2:58 PM, John J. [email protected]
wrote:

library developers to categorize their libraries better as well?
enough right now…

like…
–and really there seems to be no standard ideas to speak of on the

I have a mild concern wiith this, I would like to have things like the
followwing too

meta/enum/whatever

a

whatever/enum/meta
seems less natural to me, but I guess I would adapt, nice that we
agree on this in general :wink:

Cheers
Robert

http://ruby-smalltalk.blogspot.com/


All truth passes through three stages. First, it is ridiculed. Second,
it is violently opposed. Third, it is accepted as being self-evident.
Schopenhauer (attr.)

On Dec 22, 2007, at 8:58 AM, John J. wrote:

I think this concept of <package_name>/<category_name> is a very
good idea. It does help to encapsulate things in a logical way.
As for other people’s projects conforming…
unless something happens with ruby and gems on this kind of thing
(including adding some sort of namespace) you’re likely to see
resistance from many people.
Many people are protective and sensitive about their libraries.
Even if it is open source they want control.
Some folks are more willing to let the software take on its own
existence.

Instead of trying to come up with a single organization
that satisfies everyone, why not partition the name space:

std/...       # specified by Matz and company
rc/...        # specified by Ruby Central community
rf/...        # specified by Ruby Forge community
x/...         # unregistered namespace, first come, first serve

The idea is that the top-level name would identify the
organizer and/or organizing principle for the lower-level
names. The x/… suggestion is similar to how extensions are
proposed to mime types or mail headers. New top-level names
could be proposed and then approved by Matz and company but
ideally would remain small and would not clash with any existing
well-known project names.

Not sure how this might interact with the Ruby class/module namespace,
but any attempt to standardize either namespace should probably be
coordinated.

Gary W.