ORNL / cpp-proposals-pub

Collaborating on papers for the ISO C++ committee - public repo
26 stars 27 forks source link

P2630: Kona (2022/11/11) LEWG feedback #310

Open mhoemmen opened 2 years ago

mhoemmen commented 2 years ago

submdspan Kona 2022/11/11 feedback

"The SliceSpecifier template argument(s)" in (2) should be SliceSpecifiers (typo).

Bikeshed: strided_index_range is obviously not a range in the sense of the "ranges" library.

Does src-indices need to be constexpr? In general, do these functions need to be constexpr?

submdspan_extents:

submdspan_mapping

Specializations of submdspan_mapping

(6) is missing a close angle bracket (array<SubExtents::index_type, SubExtents::rank()>).

sub_map was not introduced before (3.1) (the Mandates that starts with is_same_v and checks the extents with submdspan_extents result). (sub_map should be something like declval<decltype(submdspan_mapping(...))>.)

submdspan

(Effects rely on CTAD, but that's OK.)

Any design questions

  1. Customization point design?
  2. integral_constant?
  3. Convertibility to tuple
  4. stride design

IL: Niebloids are used in ranges, tag_invoke is used for sender/receivers. I would suggest looking at the paper by Barry (https://wg21.link/P2279) and applying a more "modern-style" CP mechanism.

mhoemmen commented 2 years ago

Please see also