Developers:Votes:Namespace

From OctopusWiki
Jump to navigation Jump to search

Proposals to change the naming convention of modules

The purpose of the proposals is to avoid name clashes with other codes/libraries. The following options were suggested:

  1. Change the m suffix to om (modulename_om)
  2. Change the m suffix to octm (modulename_octm)
  3. Use oct as a prefix (oct_modulename_m)
  4. Add oct between the module name and the m suffix (modulename_oct_m)
  5. Add the directory name where the file is stored between the module name and the m suffix (modulename_dirname_m)
  6. Use the directory name where the file is stored as a prefix (dirname_modulename_m)

Options 3 and 4 were selected during the Videoconference meeting autumn 2015 as best candidates.

Second round

  • Prefix/suffix
    • Votes for prefix (octopus_modulename_m/oct_modulename_m): Miguel, Matthieu, Micael, Carlo
      • Bad readability, each module in the list starts with the same text, the relevant information is in the middle.
      • Clear separation between namespace (octopus/oct) and local name (modulename_m).
      • Follows a similar rule as the subroutine names (module name is a prefix to the local routine name).
    • Votes for suffix (modulename_oct_m/modulename_octopus_m): Xavier, Quim, Alberto, José Rui, Alain, David, Hannes, Alejandro
      • Simpler to process in scripts, no need to add something before and after the module name.
      • Keeps consistency with the naming convention using "_m" and "_t" suffixes already in use.
  • Octopus/oct
    • Votes for octopus (octopus_modulename_m/modulename_octopus_m): Xavier, Miguel, Quim, Alberto, Alejandro
      • Longer, but very clear to which code it belongs.
    • Votes for oct (oct_modulename_m/modulename_oct_m): Micael, Carlo, José Rui, David, Hannes, Nicole
      • Can be a bit ambiguous but shorter and trivial to expand to the full "octopus" if the need arises.
      • OCT also means "Optimal Control Theory", and it is used as such in some parts of the code.
    • No preference: Matthieu, Alain

Accepted choice

modulename_oct_m