Document number |
ISO/IEC/JTC1/SC22/WG21/P1876R0 |
Date |
2019-10-03 |
Reply-to |
Rene Rivera, grafikrobot@gmail.com |
Audience |
WG21 |
1. Abstract
This proposes to make module names as flexible as possible for maximal user flexibility to choose their ideal module organization.
3. Introduction
In D1873 [1] Michael Spencer proposes to remove the “.” from modules names. The rationale being that since the `.`s do have any current semantic they should be removed. With the goal that in some future standard the `.`s can be added with the desired semantics.
The status quo counters that leaving the `.`s provides users the ability to use `.`s as a means to structure modules, through naming, to fit their organizational needs.
If we are allowing users the limited flexibility to use `.`s we should strive to give users the maximal flexibility to use module names to express their desired structural, and other, meanings.
4. Proposal
Allow for as many syntactic characters in modules names as possible. This means
allowing the following as part of module names: ~
, !
, @
, $
, %
, ^
,
&
, *
, -
, =
, +
, |
, ,
, .
, ?
, /
, (
, )
, [
, ]
, <
, >
.
This can lead to some useful categorizations for modules. For example…
- Expressing both organization and optional grouped sub-modules
-
boost/math
,boost/math(common_factor)
,boost/math(octonion)
,boost/math(quaternion)
,boost/math(special_functions)
,boost/math(statistical_distributions)