ORNL / ORNL/cpp-proposals-pub

P0009 LWG Review 03/04/2022

Open
#205 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
HTML
Stars
29
Forks
26
PR merge metrics
No merged PRs in 30d

Description

Label naming: https://github.com/cplusplus/draft/wiki/Specification-Style-Guidelines#labels

mdspan.terms
  • par 2: remove ... from idx c12ff4a4f
  • par 3: remove $ signs e5e8eb905
Extents synopsis
  • extents::rank_dynamic call dynamic-index instead of fold c12ff4a4f
  • change comment: Constructors and assignment to Constructors, label change to mdspan.extents.ctors c0745758
  • mdspan.extents.compare -> mdspan.extents.cmp e5e8eb905
  • paragraph 3-5 being one, leave 6 c0745758
  • rev-prod-of-extents misses argument name e and i in synopsis and definition c0745758
  • Preconditions missing dot: 7 9 11 13 94fe9afc0b1
  • par: 12 and 14 comma after condition, and "the product" 94fe9afc0b1
  • Separate heading for exposition only members where the line is c0745758
  • make fwd/rev-prod-of-extents public member functions c0745758ad3
    • accept rank-type c0745758ad3
    • add note: these functions are only invoked in situations where this can't overflow
mdspan.extents.cons
  • converting constructor:

    • put the explicit condition into the see below (but not in the synopsis) 737dae6357
    • For each E_r that is not dynamic index, E_r is equal to other.extent(r). c0745758
  • par 5.3: dynamic extents should not be in italics 94fe9afc0b1

  • Thought experiment but don't do this:

  template<class...SizeTypes
  explicit constexpr extents(SizeTypes... exts)
    • change to have two constructors with dynamic and rank size_types
    • try this in implementation
  • qualify move/forward with std:: everywhere 4e4df5e004a

  • par 7: remove italics from static extent 94fe9afc0b1

  • par 9.1 "is" true instead of "equals" truec0745758

  • par 9.3 (N=rank_dynamic || N==rank()) is true c0745758

  • par 11.1 element wise wording like 11.2 2361c570ad

    • also check that in layout_stride 2361c570ad
  • just do explicit extents(Integrals...) -> see below 737dae6357

mdspan.extents.obs
  • put back in "static" before static_extent 1b571ebcb430
mdspan.layout
  • Fix numbering ec5e87461481
  • par 1.6: the integer packs i and j are ... c12ff4a4
  • par 1.8: dr is a pack of (possibly const) pack of integers c12ff4a4
    • make dr a d_r like E_r 1b571ebcb430

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the unchecked items in the issue under the Extents synopsis and constructor sections, then review the referenced commits and surrounding mdspan wording. Confirm which review comments remain unresolved, including the overflow note and constructor questions; done means the remaining checklist items are addressed in the proposal text.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
documentation
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.