JuliaRandom / JuliaRandom/RandomNumbers.jl
Change name of supertype AbstractRNG?
- Vorherrschende Sprache
- Julia
- Sterne
- 100
- Forks
- 23
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
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?
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Rechercherichtung
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.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- julia
- Bereich
- developer-experience
- Issue-Typ
- Refactoring
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100