On Wednesday, 11 February 2015 at 08:00:54 UTC, Jakob Ovrum wrote:
[snip]

Putting the complexity of the container concept aside; I think we should factor out the concept checkers from std.range.primitives and put them in std.range.concept and establish a convention of using modules named std.*.concept for concept checkers in the future. The consistency gained by such a convention makes type concepts easier to understand and commonly used module names easier to remember. If we do it now, there is no breakage, as the splitting of std.range has not yet been released: hence the otherwise clumsy timing of this suggestion.

[snip]

+1. Makes a lot of sense to do it this way.

I prefer "concept" over "trait". I think of traits as more primitive building blocks. With a trait you are querying information about a type. With a concept you are fitting a type to its requirements.

Reply via email to