Get Out Of My Namespace!!
If you been around in CPAN for a while and you are a adding the odd module you may or run into the above (well really any code repo ie PyPI, PEAR and the long extinct CJAN) .
Most likely you forgot to read 'On The Naming of Modules' and either put something in the wrong place or didn't notice the fist come first served in the 'Naming' paragraph of the Zen of Cpan.
So going back to my D&D game I know I will have to pick a namespace if I am going to add it to CPAN for others to have a look at. Luckily since I have the book in front of me I have a good Idea what I am going to do maybe like this
ADD::Character::Abilities ADD::Character::Races ADD::Character::Classes ADD::Alignment ADD::Utils ADD::Magic ADD::Monster
Now where do I add the above?
I could of course just throw it on CPAN and see what happens. I not sure if this is a good Idea as the 'ADD' can be interpreted in a number of ways and does not tell anyone what ADD is for.
I could try 'AD&D' but that would not even work in perl and I think attract too many Ambulance Chasers rather than D&D types.
I could try 'Advanced::Dungeons::Dragons' but I do not like that as it would be rather unworkable with very long package names and sure as shit some mouth-piece shilling for the Wizards of the Coast' will slap some paper on me in a few mins.
Well there are some good places for it. We have 'Acme' on CPAN which is a place for all sorts of oddities
but this is not a joke but hopefully useful code to someone.
It is also a tutorial of sorts but there is no namespace for that. I could try to hide it under MooseX but its only relation to Moose is it is written in Moose so that is a fail.
We do have a 'Games' namespace but this one is filled up of full mostly playable games which this system will most likely not be.
One I found that I like is 'RPG' as AD&D is an RPG and it does not make package names too bulky. So I lets throw that on PAUSE and see what happens!
RPG::ADD::Character::Abilities RPG::ADD::Character::Races RPG::ADD::Character::Classes RPG::ADD::Alignment RPG::ADD::Magic RPG::ADD::Monster
so lets try that
Register Namespace Sending separate mails to: [modules@perl.org] AND [byterock@hotmail.com]From: upload@pause.perl.org
Subject: Module submission RPG::ADD
The following module was proposed for inclusion in the Module List:modid: RPG::ADD
DSLIP: inpOp
description: A name space for ADD game parts
userid: BYTEROCK
chapterid: 23 (Miscellaneous_Modules)
communities:
https://blogs.perl.org/similar:
RPG::Travellerrationale:
Well AD&D is a RPG and it seems like a good fit as there is already
one RPG game there called 'RPG::Traveller'enteredby: BYTEROCK
And now we wait?
It may be worth reading Should I register a namespace in PAUSE before every cpan module upload?