`span` is a concrete class (well, it's a template class but you know what I mean) which has specific functionality. "Ranges" are concepts; they represent patterns that other datatypes can implement.
A `span` is a range type, but not all ranges are `span`s. `vector`, `list`, and the other containers are also ranges.
The Ranges TS does not provide `span` or anything like `span` as a type. Indeed, if I recall correctly, the current Ranges TS doesn't provide any range types at all. Such types are reserved for the next version of the proposal.
I don't believe that Boost.Range provides anything quite like `span` either. While it does have iterator ranges, it doesn't have a range type that restricts itself to contiguous arrays only. `span` does.
So really, `span` has little to do with the Range TS, and it is not derived from it.