On Wed, 29 Aug 2001, Avdi B.Grimm wrote:

> Bring CPAN to Ruby!!!

Hmm, that was my cry at first, but it is fading...

Why...

- CPAN is a tangled web. Start sucking on one end and you can be
  installing and sucking for days, only to die on the rocky shores of
  mutually exclusive version dependencies.

  It was an excellent idea when it was smaller. Now it is a just plain bad
  idea.

  The "Bundles" are a much better idea. ie. I wish that all the important
  items in the whole RAA were in two or three big Bundles. (ie. If
  practically anything else depends on module A, module A is in one of the
  Bundles.)

- CPAN is big. The modules are big. They are hairy. They have grown and
  have backward compatibility hooks and on average their OOP design is
  horrible. Ugly. Ugly. Ugly. Using them is Ugly. Learning them is Ugly.

  I would rather the effort be put into working out what functionality in
  CPAN is really useful and re-implementing it properly/neatly in Ruby.

- Versioning. Version dependency hell is the death of reusable software.

  Solution Major/Minor version numbers.

  If the Major number moves, an API change has occured. Upgrades overwrite
  previous versions having the same major version number, but leave
  versions have a different version number.

  Require's should be able to specify a major version number or version
  number range... (posibly open ended).

John Carter                             Phone : (64)(3) 358 6639
Tait Electronics                        Fax   : (64)(3) 359 4632
PO Box 1645 Christchurch                Email : john.carter / tait.co.nz
New Zealand

I'm becoming less and less convinced of humans as rational beings.
I suspect we are merely meme collectors, and the reason meme is only
kept on to help count our change.