Hi there,
First things first, let me tell you that the following document draft
is predating my finding of EasyBuild and, incorporates experience
and conventions across other -collaborating- HPC sites:
https://github.com/fgeorgatos/HPC-RFC/blob/master/0001/0001.md
Of course, it is not at all a standard unless people opt to adopt it ;-)
My stance is, that the name of the package should be Developer's privilege,
while the name of any module should be Sysadmin's privilege.
(because _they_ pay the "price" of those choices, too!)
In that light, and for simplicity, I suggest the applications' namespace
should be case-sensitive (ie. both packages R and r should be allowed :-)
Since modules also allow case sensitivity, it is good to preserve the feature
and give the freedom to each sysadmin to provide the case he prefers better
(a oneliner script making symlinks is doable, but won't do dependencies)
This last one may be put in the queue as a future feature request,
since its impact in code elegance may not be minimal.
(afterthought: the non-feature enforces homogeneity which _I_ appreciate!)
Of course, you may have encountered counter-arguments for the above concepts,
so this is a good moment to state them - at least I'd like to hear about it!
To make a long story short:
On 25/07/2012 11:45, Fotis Georgatos wrote:
> class_name = name[0].upper() + name[1:].replace('-','_')
After pondering on it, I think the optimal function name is:
class_name = "EasyBuild_" + name.replace('-','_')
Rational from PEP0008: "There's also the style of using a short unique prefix
to group related names together."
And that will a) reduce collisions & b) allow max freedom in the namespace
What do you think?
--
echo "sysadmin know better bash than english" | sed s/min/mins/ \
| sed 's/better bash/bash better/' # Yelling in a CERN forum