JuliaRandom / JuliaRandom/RandomNumbers.jl
Change name of supertype AbstractRNG?
- Ngôn ngữ chính
- Julia
- Star
- 100
- Fork
- 23
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Mô tả
I think "re-using" the name `AbstractRNG` is not ideal:
`abstract type AbstractRNG{T<:Number} <: Base.Random.AbstractRNG end`
`AbstractRNG` is defined and exported by `Base` and `RandomNumbers`
```
using RandomNumbers
AbstractRNG
```
results in following:
```
WARNING: both RandomNumbers and Base export "AbstractRNG"; uses of it in module Main must be qualified
ERROR: UndefVarError: AbstractRNG not defined
```
Thus code that uses `AbstractRNG` without `RandomNumbers`, will no longer work when `using RandomNumbers`, without explicitly qualifying. i.e. that code will need modifying.
This can be problematic when one doesn't have access to the modules containing references to `AbstractRNG`.
Maybe this is some form of type piracy?
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Hướng nghiên cứu
Start by reviewing the exported AbstractRNG definition shown in the issue and comparing it with Base.Random.AbstractRNG. Determine an unambiguous replacement and assess the impact on code that imports RandomNumbers; done means the export collision is resolved with compatibility implications documented.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- julia
- Lĩnh vực
- developer-experience
- Loại issue
- Tái cấu trúc
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 35/100