[Dune] [#448] Naming scheme

Dune dune at dune-project.org
Wed Nov 5 09:13:53 CET 2008


The following task has a new comment added:

FS#448 - Naming scheme
User who did this - Markus Blatt (mblatt)

I think introducing a namespace for this is the wrong approach.

As I have implemented or reimplemented some containers and other stuff that is eventually becoming integrated into c++0x let me give you my two cents:

Let us be honest. Nobody (or at least just some newby) will go ahead and use dune-common stand-alone. There are other more suitable libraries extending standard c++. All actual and prospecting Dune (or at least dune-grid) users are already or have to become familiar with CamelCase. At least in former times they (as well as ourselves) were not very familiar with the STL naming scheme. (This might have changed, though.) If they have learned CamelCase from the grid-howto they will expect this naming scheme throughout DUNE, naturally. (I would, too).

Therefore I think we should stick to CamelCase and BTW save us a lot of work and confusion of users.

There are exceptions or let us say additional requirements, though:

1. Conatainer (like SLList, ArrayList) need to provide the STL name scheme (of typedefs and functions) in addition to the CamelCase scheme. Otherwise they cannot be used by STL algorithms and this would pose a great disadvantage in terms of usability.

2. Additions to the STL that are similar to accepted ones for future C++ versions and are supported by some compilers can adhere to the STL naming scheme. Then even the class names have to adhere to the STL naming scheme. But this should be up to the implementor as it is a lot work. (E.g. for the tuples I tried that, but gave up half the way through, as there are a lot of dependencies onto other stuff. This means somebody working with a compiler that has builtin tuples will have quite some surprises if he ever has to use a compiler without support of std tuples)

Actually the last point even promotes using CamelCase by default to prevent name clashes.

More information can be found at the following URL:

You are receiving this message because you have requested it from the Flyspray bugtracking system.  If you did not expect this message or don't want to receive mails in future, you can change your notification settings at the URL shown above.

More information about the Dune mailing list