Can we contextualize `parent_type`?
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 20/100
Hướng nghiên cứu
Bắt đầu bằng việc đọc PR được liên kết và phần thảo luận của issue về parent(x), parent_type(x) và các danh mục BufferStyle được đề xuất. So sánh các ví dụ được nêu —SubArray, Tridiagonal và FillArrays— và xác định xem có thể đặc tả một trait cụ thể hay một thiết kế tổng quát f(x) = f(parent(x)) hay không. Được xem là hoàn tất khi đạt được một đề xuất interface đã thống nhất và có thể triển khai.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
When I made this PR to base some good points were brought up about what we knew about parent(x) compared to x. With a few exceptions (that we should probably clean up), we simply use parent_type as convenient syntax for communicating the type of the underlying data buffer/collection. An informal search through juliahub shows that a handful of packages define something very similar independent of this package, so it's clearly something that has utility already. I'd like to know if we could do better.
The biggest hangup here is how we succinctly describe what assumptions persists between x and parent(x). The only approachable idea I have is a method like is_lazy_wrapper when we can assume that the wrapper type changes nothing. However, that seems extremely limiting and questionably useful.
A more approachable aspect to this is describing the kind of type that is parent_type(x). For example, sub-typing something like BufferStyle with these subtypes:
WrappedBuffer: single wrapped buffer likeSubArray.MultiBuffer: multiple distinct buffers likeTridiagonalComputedBuffer: buffer is computed on the fly and isn't stored in memory (e.g., FillArrays).
However, creating traits for describing parent_type(x) isn't terribly useful until we have a generic approach for doing f(x) = f(parent(x)).
- Ngôn ngữ chính
- Julia
- Star
- 14
- Fork
- 8
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Chuẩn bị môi trường
Chúng tôi chưa kiểm tra các tệp thiết lập môi trường của dự án này. Hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của JuliaArrays/StaticArrayInterface.jl
-
tagbot-manual
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 68/100
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 35/100
-
Storage OrderĐang mở
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 25/100
JuliaArrays/StaticArrayInterface.jl#4 · 1 bình luận ·
-
Size of StaticArray typeĐang mở
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 32/100
JuliaArrays/StaticArrayInterface.jl#3 · 10 bình luận ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 45/100
JuliaArrays/StaticArrayInterface.jl#10 · 2 bình luận ·
Tất cả issue của JuliaArrays/StaticArrayInterface.jl
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
JuliaComputing/jh#63 · 1 bình luận ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
SciML/BoundaryValueDiffEq.jl#649 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 84/100
SciML/NonlinearSolve.jl#1336 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 92/100
SciML/NeuralPDE.jl#1214 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
JuliaSymbolics/Symbolics.jl#2015 ·
Maintainer thường phản hồi trong vòng 1 ngày