This naming problem seems to be common in areas with several large and roughly-similar solutions. Those similarities complicate the "use a descriptive module name" guideline that we'd otherwise aim for. (For example, if people didn't use project names like "Maypole" and "Catalyst", how many modules would we have with almost indistinguishable names like "Web::SimpleMVC", "Web::NiftyMVC" and "Web::FastMVC"?)

I think that the simplest step is to start by moving Tangram under a descriptive top-level namespace like DBIx:: or Persistence:: so that people who see the name at least have some basic idea of what it does. To quote from perlmodlib and perlmodstyle:

For what it's worth, the DBIx:: namespace does seem to be well known, and it's where I put my own DBIx::SQLEngine. Changing the name to DBIx::Tangram seems minimally disruptive, and people who were looking for it under the old name would quickly find the new one.

If you want to go further, here are a few more naming tips from perlmodlib and perlmodstyle:

Based on those suggestions, I'd be thinking of something along the lines of "DBIx::OrthoganalPersistence" or "DBIx::PersistenceMapping" -- those examples are both too long, but at least when you see them you have some idea of what the module does.


In reply to Re: New name for Tangram? by simonm
in thread New name for Tangram? by mugwumpjism

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.