On 11/09/2012 22:19, Joseph Wright wrote:
> Hello all,
> Take up of expl3 as a programming language raises new issues both in the
> code itself and in the wider structures.
> One area which deserves attention is namespacing: management of module
> prefixes (and related information). In LaTeX2e, this is handled in a
> broadly successful but somewhat ad hoc manner, relying on searching over
> released material to find what prefixes are in use. As expl3 formalises
> the idea of using a namespace prefix for each module, it seems
> appropriate to consider a more formal approach to managing these.
> Looking outside of the TeX world, it is notable that similar concerns
> come up for example in the Perl community:
> http://www.cpan.org/modules/04pause.html#namespace. Clearly, our
> requirements are different as expl3 code is a subset of (La)TeX code,
> and so management at the CTAN level is inappropriate.
> I think we can see namespace management in two parts:
> - 'Outside LaTeX': having a system available for consultation
> before any code is written.
> - 'Inside LaTeX': making module information available from within a
> TeX run.
> At this stage, I want to focus on the 'outside' part of the question.
> There are many approaches that one can imagine, varying from the very
> simple to the very complex. An approach I'd like to raise here is at the
> low-tech end of the spectrum. I envisage a simple list of module
> prefixes with associated information: the module name, developer(s),
> contact details, web site, bug tracker, etc. This would be available in
> public (CTAN/LaTeX3 SVN), but updates would rely on a simple process:
> contacting the team and making a request. This could then be made more
> 'high tech' in the future if necessary.
> An 'open' list of prefixes offers advantages, for example begin able to
> 'reserve' prefixes in advance of code release (for the team) and making
> clear that some prefixes are 'free for all' (perhaps "tmp" and "foo",
> for example). At the same time, there will be some issues, for example
> how to handle conflicts and how to make sure information remains up to date.
> Clearly, any such approach requires agreement within the expl3 developer
> community. Thus what I am seeking here is in the first instance feedback
> on this idea. Does this seem sensible, workable and useful?
> Joseph Wright
I note a lack of objections, so at least a tacit sense that this may be
a good idea :-)
That being the case, the immediate questions are what to have in such a
register and how to make contact to have material added. On the details,
things which come to mind are
- Prefix itself!
- Contact details: I guess a publicly-recordable e-mail address is a
must, plus a person or group name
- Module name (may be different from the prefix)
- Homepage for project
- Issue database/code repo locations
I think 'incoming details' probably need to go to some archived list,
which means either here or the team e-mail address. To avoid spamming
too many people, I guess the latter might be preferable.
Does this make sense?