math.functions: some silly cleanup.
parent
ec6e3c218c
commit
14ed9a5455
|
@ -238,18 +238,20 @@ M: complex log >polar [ flog ] dip rect> ; inline
|
||||||
|
|
||||||
: most-negative-finite-float ( -- x )
|
: most-negative-finite-float ( -- x )
|
||||||
-0x1.ffff,ffff,ffff,fp1023 >integer ; inline
|
-0x1.ffff,ffff,ffff,fp1023 >integer ; inline
|
||||||
|
|
||||||
: most-positive-finite-float ( -- x )
|
: most-positive-finite-float ( -- x )
|
||||||
0x1.ffff,ffff,ffff,fp1023 >integer ; inline
|
0x1.ffff,ffff,ffff,fp1023 >integer ; inline
|
||||||
|
|
||||||
CONSTANT: log-2 0x1.62e42fefa39efp-1
|
CONSTANT: log-2 0x1.62e42fefa39efp-1
|
||||||
CONSTANT: log10-2 0x1.34413509f79ffp-2
|
CONSTANT: log10-2 0x1.34413509f79ffp-2
|
||||||
|
|
||||||
: (representable-as-float?) ( x -- ? )
|
: representable-as-float? ( x -- ? )
|
||||||
most-negative-finite-float
|
most-negative-finite-float
|
||||||
most-positive-finite-float between? ; inline
|
most-positive-finite-float between? ; inline
|
||||||
|
|
||||||
: (bignum-log) ( n log-quot: ( x -- y ) log-2 -- log )
|
: (bignum-log) ( n log-quot: ( x -- y ) log-2 -- log )
|
||||||
[ dup ] dip '[
|
[ dup ] dip '[
|
||||||
dup (representable-as-float?)
|
dup representable-as-float?
|
||||||
[ >float @ ] [ frexp [ @ ] [ _ * ] bi* + ] if
|
[ >float @ ] [ frexp [ @ ] [ _ * ] bi* + ] if
|
||||||
] call ; inline
|
] call ; inline
|
||||||
|
|
||||||
|
@ -368,8 +370,7 @@ M: real tanh >float tanh ; inline
|
||||||
dup [-1,1]? [ >float fasin ] [ i* asinh -i* ] if ; inline
|
dup [-1,1]? [ >float fasin ] [ i* asinh -i* ] if ; inline
|
||||||
|
|
||||||
: acos ( x -- y )
|
: acos ( x -- y )
|
||||||
dup [-1,1]? [ >float facos ] [ asin pi 2 / swap - ] if ;
|
dup [-1,1]? [ >float facos ] [ asin pi 2 / swap - ] if ; inline
|
||||||
inline
|
|
||||||
|
|
||||||
GENERIC: atan ( x -- y ) foldable
|
GENERIC: atan ( x -- y ) foldable
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue