Fix assertion for proper Huffman merge pattern: 0 == 1 modulo 1.
[pspp] / tests / expr.stat
1 title 'Test optimization of constant expressions'.
2
3 remark EOF
4 ----------------------------------------------------------------------
5 Testing ability of stat to optimize constant expressions.
6 stat must have been compiled with debugging enabled in order to
7 run these tests.
8 ----------------------------------------------------------------------
9 EOF
10 eval 1+2+3+(4*5).
11 eval (4-2+6.323)*(0/4-1)*(1-3+abs(-9.78)).
12 eval 3**(2**(8/2*3/4)).
13
14 * Truth tables. 
15 eval 0 and 0.
16 eval 0 and 1.
17 eval 1 and 0.
18 eval 1 and 1.
19
20 eval 0 or 0.
21 eval 0 or 1.
22 eval 1 or 0.
23 eval 1 or 1.
24
25 eval not 0.
26 eval not 1.
27
28 eval (1 gt 2) and (2 gt 1).
29 eval (7/8+1 lt 2) or (2-1/6 lt 1).
30 eval not (7 ne 6).
31
32 eval -(7/8).
33 eval abs(-6.5).
34 eval arcos(1.0).
35 eval arcos(sqrt(2)/2).
36 eval arsin(sqrt(2)/2).
37 eval artan(0).
38 eval artan(1.0).
39 eval cos(3.141592654/4).
40 eval cos(3.141592654/6).
41 eval exp(1).
42 eval exp(-1).
43 eval lg10(10).
44 eval lg10(128.910).
45 eval ln(2.71828182846).
46 eval ln(50).
47 eval mod10(128.910).
48 eval rnd(128.9).
49 eval rnd(-128.9).
50 eval rnd(128.1).
51 eval rnd(-128.1).
52 eval rnd(128).
53 eval rnd(-128).
54 eval rnd(128.5).
55 eval rnd(-128.5).
56 eval sin(2*3.141592654).
57 eval sin(3.141592654/6).
58 eval tan(0).
59 eval tan(3.141592654/8).
60 eval trunc(3.141592654).
61 eval trunc(-9.99).
62
63 eval 'x'.
64 eval concat('x','y').
65