-
Notifications
You must be signed in to change notification settings - Fork 7
Open
Description
Thanks for starting this package. I've been getting used to it before adding my stuff.
Here are a few things I've noticed in the implementation so far that I think need to be justified or addressed:
- Is
NotANumberreally necessary? Why not just raise an exception? - I don't think we should have constructors
RealInfinity(signbit::Bool)andComplexInfinity(angle::Real): the convention in Julia Base is that for a numeric typeTthatT(x::Number)is the same asconvert(T, x). There should be constructors private to the module calledrealinffromsignbitor something. - Why is there checked arithmetic when this is for integers, and infinity is not an integer?
- Why is
fld(x, Infinity()) == -1whenx<0? I am guessing that you are definingfld(x, Infinity())as the limit asygets big offld(x, y), but an equally good definition is simply that it isfloor(x / Infinity()) == 0. The latter definition is the one in the Julia documentation, and arguably the one people would expect. - Given
ComplexInfinityis not ordered, why aremod,div,fld,isless,<,min, etc. defined? They aren't defined forComplex.
Metadata
Metadata
Assignees
Labels
No labels