[#3228] Core support for Gems, and namespace — "Luke A. Kanies" <luke@...>

Hi all,

21 messages 2004/07/27
[#3230] Re: Core support for Gems, and namespace — Austin Ziegler <halostatue@...> 2004/07/27

On Tue, 27 Jul 2004 11:39:08 +0900, Luke A. Kanies <luke@madstop.com> wrote:

[#3234] Re: Core support for Gems, and namespace — "Luke A. Kanies" <luke@...> 2004/07/27

On Tue, 27 Jul 2004, Austin Ziegler wrote:

[#3238] Re: Core support for Gems, and namespace — Austin Ziegler <halostatue@...> 2004/07/27

On Wed, 28 Jul 2004 00:14:29 +0900, Luke A. Kanies <luke@madstop.com> wrote:

Core support for Gems, and namespace

From: "Luke A. Kanies" <luke@...>
Date: 2004-07-27 02:39:08 UTC
List: ruby-core #3228
Hi all,

I'm getting to the point where my ruby libraries are sophisticated enough 
that I'd like to start packaging them, which means that 1) it's important 
that the packaging be as close as possible to a standard, and 2) it needs 
to be easy for others to install my packaged libraries.  For instance, 
I've got some Nagios libraries that I would very much like to be easy for 
people to use.

I should probably ask this question of the Gems list, but I don't want to 
join another list just to ask this questin, and I also think this is an 
issue that lies at the core of the language, so it's important that it's 
solved at the core.

I'm looking at the Gems stuff, and it seems that all scripts will have to 
clearly differentiate between libraries installed with gem vs. those 
installed by hand.  Is it true that I, as a script writer, will have to 
know whether my eventual user installed libraries as Gems?  Even worse, is 
it true that all scripts are likely to import the gems libraries?  Why is 
not possible to just put all gems in a specific directory, and add that 
directory to the library search path?  Does anyone know why this feature 
set was chosen?

On a related note, one of the things that CPAN spends a significant amount 
of effort on is managing name space, but as far as I can tell, there is no 
such effort in the Ruby community.  This is definitely related to Gems, as 
that is really the only place you can manage namespace. While I know that 
filing libraries is seldom completely straightforward, I also know that 
having a completely flat namespace will be totally unmanageable in a few 
years, and it's best to solve this problem while it's small.

And like I said, even though these are actually meta-problems for Ruby, 
and not part of the language itself, I think that in terms of the user 
community they lie squarely in the heart of the language as a tool.  When 
I discuss ruby vs. perl with people, everyone wants to know:  Is there 
CPAN?  Is there perldoc?  My answer is still no, because I can't see how 
gems can provide the seamless simplicity of CPAN.  Every perl script I've 
written for the last 3 years or so has embedded documentation and a --help 
command that behaves just like 'man <script>', but as far as I can tell, I 
still can't get that functionality in ruby.

Am I missing something?  I want to start publishing my libraries, and I 
really want to make it as easy as possible for people to install them.

Any help would be greatly appreciated.  I absolutely adore Ruby, and I am 
doing almost all of my programming in it, but I'm afraid that I will have 
a tough time convincing people to use much of what I write...

Luke

-- 
Today at work an ethernet switch decided to take the 'N' out of NVRAM
                 -- Richard Letts
---------------------------------------------------------------------
Luke Kanies | http://abstractive.org | http://reductiveconsulting.com

In This Thread

Prev Next