1 USING: grouping kernel math math.constants math.order sequences
4 { t } [ 0.0 float? ] unit-test
5 { t } [ 3.1415 number? ] unit-test
6 { f } [ 12 float? ] unit-test
8 { f } [ 1 1.0 = ] unit-test
9 { t } [ 1 1.0 number= ] unit-test
11 { f } [ 1 >bignum 1.0 = ] unit-test
12 { t } [ 1 >bignum 1.0 number= ] unit-test
14 { f } [ 1.0 1 = ] unit-test
15 { t } [ 1.0 1 number= ] unit-test
17 { f } [ 1.0 1 >bignum = ] unit-test
18 { t } [ 1.0 1 >bignum number= ] unit-test
20 { f } [ 1 1.3 = ] unit-test
21 { f } [ 1 >bignum 1.3 = ] unit-test
22 { f } [ 1.3 1 = ] unit-test
23 { f } [ 1.3 1 >bignum = ] unit-test
25 { t } [ 134.3 >fixnum 134 = ] unit-test
27 { 3 } [ 3.5 >bignum ] unit-test
28 { -3 } [ -3.5 >bignum ] unit-test
30 { 3 } [ 3.5 >fixnum ] unit-test
31 { -3 } [ -3.5 >fixnum ] unit-test
33 { 2.1 } [ -2.1 neg ] unit-test
35 { 3 } [ 3.1415 >fixnum ] unit-test
36 { 3 } [ 3.1415 >bignum ] unit-test
38 { t } [ pi 3 > ] unit-test
39 { f } [ e 2 <= ] unit-test
41 { t } [ 1.0 dup float>bits bits>float = ] unit-test
42 { t } [ pi double>bits bits>double pi = ] unit-test
43 { t } [ e double>bits bits>double e = ] unit-test
45 { 0b11111111111000000000000000000000000000000000000000000000000000 }
46 [ 1.5 double>bits ] unit-test
49 [ 0b11111111111000000000000000000000000000000000000000000000000000 bits>double ]
52 { 2.0 } [ 1.0 1 + ] unit-test
53 { 0.0 } [ 1.0 1 - ] unit-test
55 { t } [ 0.0 zero? ] unit-test
56 { t } [ -0.0 zero? ] unit-test
58 { 0 } [ 1/0. >bignum ] unit-test
60 { t } [ 64 iota [ 2^ 0.5 * ] map [ < ] monotonic? ] unit-test
62 { 5 } [ 10.5 1.9 /i ] unit-test
64 { t } [ 0 0 /f fp-nan? ] unit-test
65 { t } [ 0.0 0.0 /f fp-nan? ] unit-test
66 { t } [ 0.0 0.0 / fp-nan? ] unit-test
67 { t } [ 0 0 [ >bignum ] bi@ /f fp-nan? ] unit-test
69 { 1/0. } [ 1 0 /f ] unit-test
70 { 1/0. } [ 1.0 0.0 /f ] unit-test
71 { 1/0. } [ 1.0 0.0 / ] unit-test
72 { 1/0. } [ 1 0 [ >bignum ] bi@ /f ] unit-test
74 { -1/0. } [ -1 0 /f ] unit-test
75 { -1/0. } [ -1.0 0.0 /f ] unit-test
76 { -1/0. } [ -1.0 0.0 / ] unit-test
77 { -1/0. } [ -1 0 [ >bignum ] bi@ /f ] unit-test
79 { t } [ 0/0. 0/0. unordered? ] unit-test
80 { t } [ 1.0 0/0. unordered? ] unit-test
81 { t } [ 0/0. 1.0 unordered? ] unit-test
82 { f } [ 1.0 1.0 unordered? ] unit-test
84 { t } [ -0.0 fp-sign ] unit-test
85 { t } [ -1.0 fp-sign ] unit-test
86 { f } [ 0.0 fp-sign ] unit-test
87 { f } [ 1.0 fp-sign ] unit-test
89 { t } [ -0.0 abs 0.0 fp-bitwise= ] unit-test
90 { 1.5 } [ -1.5 abs ] unit-test
91 { 1.5 } [ 1.5 abs ] unit-test
93 { 5.0 } [ 3 5.0 max ] unit-test
94 { 3 } [ 3 5.0 min ] unit-test
96 { 39 0x1.999999999998ap-4 } [ 4.0 .1 /mod ] unit-test
97 { 38 0x1.9999999999984p-4 } [ 3.9 .1 /mod ] unit-test
98 { -39 0x1.999999999998ap-4 } [ 4.0 -.1 /mod ] unit-test
99 { -38 0x1.9999999999984p-4 } [ 3.9 -.1 /mod ] unit-test
100 { 39 -0x1.999999999998ap-4 } [ -4.0 -.1 /mod ] unit-test
101 { 38 -0x1.9999999999984p-4 } [ -3.9 -.1 /mod ] unit-test
102 { -39 -0x1.999999999998ap-4 } [ -4.0 .1 /mod ] unit-test
103 { -38 -0x1.9999999999984p-4 } [ -3.9 .1 /mod ] unit-test
105 { 0.5 } [ 3.5 0.75 mod ] unit-test
106 { -0.5 } [ -3.5 0.75 mod ] unit-test
107 { -0.5 } [ -3.5 -0.75 mod ] unit-test
108 { 0.5 } [ 3.5 -0.75 mod ] unit-test
110 { 4 0.5 } [ 3.5 0.75 /mod ] unit-test
111 { -4 -0.5 } [ -3.5 0.75 /mod ] unit-test
112 { 4 -0.5 } [ -3.5 -0.75 /mod ] unit-test
113 { -4 0.5 } [ 3.5 -0.75 /mod ] unit-test