The pull request ros2/design#161 proposes banning consecutive underscores _ in topic names. Please feel free to comment on the the pull request, especially if this would be a problem for your use case.
If there are no objections I will merge the pull request shortly after UTC 11:59pm Friday January 19, 2018.
A reason for not having a few special keywords is if they are not enough in the future then adding new ones risks breaking existing topics. Lifting a blanket ban on __ if it is found to be unnecessary would not break anything.
I think you might be confusing these two things. We want to ban __ regardless of how we implement it in DDS (we’re still using partitions right now), but instead to allow us to unambiguously differentiate a relative topic which starts with __ and some of our special tokens like __ns and __node.
I thought that the __ are only used for topic namespaces. In case they would be implemented as DDS partitions I think it wouldn’t be necessary to ban them. I case of special tokens I think it would be the easiest to ban the double underscore.