should leverage our tesh(1) utility.
**
-** Type naming standard
+** NEW type naming standard in SimGrid4
**
*****************************************************
-It may sound strange, but the type naming convention was source of intense
-discussion between da SimGrid posse members. The convention we came to may not
-be the best solution, but it has the merit to exist and leave everyone work.
-So please stick to it.
+SimGrid4 will follow the these rules:
+
+ - filenames are unique in the whole project
+ (because of a bug in Sonar coverage computation)
+ C++
+ - fields, methods and variables are in snake_case()
+ - Classes and Enum names are in UpperCamelCase
+ - Enum values are in UPPER_SNAKE_CASE (as constants)
+ - public filenames: api_Class.cpp and api/Class.hpp.
+ - Example: src/s4u/s4u_ConditionVariable.cpp and
+ include/simgrid/s4u/ConditionVariable.hpp
+ - If you prefer api_class.cpp, that's OK, too. Breath and relax.
+ Example: src/s4u/s4u_actor.cpp and include/simgrid/s4u/Actor.hpp
+ - internal/kernel filenames: Class.cpp and Class.hpp
+ - Example: src/kernel/activity/Activity.cpp
+ include/simgrid/activity/Activity.hpp
+ C
+ - variables and functions are in snake_case()
+ - typedefs do not hide the pointers, ie * must be explicit
+ char * sg_host_get_name(sg_host_t * host);
+
+
+This is different from the old convention (described below), that
+should not be used in S4U and its bindings, nor in the kernel.
+
+**
+** OLD Type naming standard in SimGrid3
+**
+*****************************************************
+
+SimGrid3 legacy interfaces (ie, MSG and SimDag) are following these rules:
- ???_t is a valid type (built with typedef)
- s_toto_t is a structure (access to fields with .)