Float64
From Erights
The Float64
type is E's primary floating-point number type. Its members are IEEE 64-bit binary floating-point numbers. (XXX is this appropriate definition language?) Float64 is one of the E literal types.
The universal scope contains float64
(no capital), the guard for this type.
? float64 # value: float64
Contents |
Protocol
Number protocol
Float64s implement the number protocol. (XXX figure out if there's benefit in templating to include generic number tests here)
abs/0
- Signature: abs() :Float64
As specified in the number protocol. Specific tests:
? 0.0.abs() # value: 0.0 ? 0.5.abs() # value: 0.5 ? (-0.0).abs() # value: -0.0 ? (-0.5).abs() # value: 0.5
XXX is (-0.0).abs() supposed to be negative?
sin/0
- Signature: sin() :Float64
Returns the trigonometric sine of this number as an angle in radians.
? 0.0.sin() # value: 0.0
cos/0
- Signature: cos() :Float64
Returns the trigonometric cosine of this number as an angle in radians.
? 0.0.cos() # value: 1.0
tan/0
- Signature: tan() :Float64
Returns the trigonometric tangent of this number as an angle in radians.
? 0.0.tan() # value: 0.0
XXX test nonzero parameters for trig functions
XXX write tests for all other methods (get from eocl and eojava)
XXX Design issue: Is the canonical initial letter case for this type name (and int, boolean) upper or lower?