Comments (3)
Yeah - I tightened up this clause and a lot of the subspan wording in PR #55
from cpp-proposals-pub.
Though the main thing is that you added arbitrary layout conversions. Previously we had this as a subspan always being layout_stride and the function only being defined for basic_mdspan with one of the standard layouts. That reduced the amount of definition we needed to do. In fact other than the requirement of preserving static extents as static in order to not have a QOI dependent ABI, the subspan definition was complete for that case. We consciously sidestepped the generic layout convertibility previously to keep the proposal simple. Note that we neither define conversions of layouts into each other.
This btw. brings another awkward problem with it: through subspan you basically now require that arbitrary layout (i.e. custom layout) conversions are possible, since there is no require clause which limits what layout to which layout works. That means the post conditions are not actually fulfillable, while still being able to meet the requirements. This we can fix relatively straight forward by again requiring that the source layout is one of the standard layouts.
Our thinking was to later extend this with defining some mapping_conversion<MappingA,MappingB>
class, which would introduce those capabilities, but leaving it for later.
from cpp-proposals-pub.
This is resolved: we are requiring static_extent
preservation when using the all_type
as a slice specifier for a static_extent
.
from cpp-proposals-pub.
Related Issues (20)
- P2897R0 (aligned_accessor): LEWG presentation
- P2897R0 (aligned_accessor): LEWG feedback 2023/10/10
- P1673: LWG review 2023/10/18 HOT 3
- P1673: Explore using math formula instead of GENERALIZED_SUM and/or English
- P2901 LEWG presentation: 2023/10/24
- P2901 LEWG review: 2023/10/24
- P1673: LWG review 2023/10/25 HOT 1
- P1673: LWG review 2023/11/06 (Kona)
- P1673: LWG review 2023/11/07 (Kona) HOT 3
- LEWG Kona 11/2023 Padded Layouts Review HOT 1
- LEWG Kona 11/2023 mdarray
- P2642: 2024/01/31 LWG review
- P2642: Avoid division by zero HOT 1
- P2642, P2630, P2897: Express compile-time extent with nonzero offset HOT 1
- P2642: Fixes for changes from LWG 2024/01/31 review
- P2642: LWG 2024/02/14 review HOT 5
- Define submdspan_mapping for layout_transpose
- Add transposed special cases for P2642 layouts
- P2642: LWG 2024/02/28 review HOT 1
- P2689: Bounded atomic_ref and atomic_accessor LEWG Presentation 04/30/2024
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cpp-proposals-pub.