Cyril wrote
> Until now, the T is before the prefix. (For example TIceXXX for
> Iceberg). So I followed what was already done.

But then IMHO Iceberg is wrong too and do not correctly and consistently use 
their own prefix
in front of classes/traits.

See other samples like traits in which are also there already:

Epicea       -> EpTEventVisitor
Fuel         -> FLTGlobalClassOrTraitSerializationTest
Glamour      -> GLMTBlockTags
Moose Algos  -> MalTEdgeNode
...

and where "prefix" is first as it should be.

There are several reasons why "prefix" should be first:

 1. As the name says: it is a prefix - so it would be obvious to have it in 
front of the class or trait name.

 2. Prefixes are a workaround because we do not have namespaces (yet). 
Following the "prefix" always
    first rule we could later have a separation into namespaces more easily 
later when migrating.

 3. If someone uses a prefix starting with a "T" too, like "TPL" for Template 
library then
    people get easily confused with class/trait mix of "TTPL" and "TPLT" 
looking like a typo or
    thinking all are traits because "T" is the first.

Therefore
 - Prefix should be two (as in Seaside), ideally three letters and ideally in 
uppercase
   IMHO we should define a rule to have three uppercase letters at least for 
the base image.
 - order should be "prefix" and then class or trait name (where trait names 
start with "T".

Smalltalk provides lots of freedom. But without rules and discipline it easily
ends up in inconsistencies, chaos, a mess...

Looks like even Pharo engineers miss a code guide these days ...

Bye
T.


Reply via email to