Moved legacy code into archive, ready for a new rapid(?) prototype.
I may regret doing this!
This commit is contained in:
parent
09051a3e63
commit
914c35ead0
114 changed files with 165 additions and 1 deletions
|
|
@ -1,136 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
result=0
|
||||
|
||||
#####################################################################
|
||||
# last 'smallnum' value:
|
||||
# sbcl calculates (expt 2 59) => 576460752303423488
|
||||
expected='576460752303423488'
|
||||
|
||||
output=`target/psse 2>/dev/null <<EOF
|
||||
(progn
|
||||
(set! expt (lambda
|
||||
(n x)
|
||||
(cond
|
||||
((= x 1) n)
|
||||
(t (* n (expt n (- x 1)))))))
|
||||
nil)
|
||||
(expt 2 59)
|
||||
EOF`
|
||||
|
||||
actual=`echo "$output" | tail -1 | sed 's/\,//g'`
|
||||
|
||||
echo -n "$0 => (expt 2 59): "
|
||||
if [ "${expected}" = "${actual}" ]
|
||||
then
|
||||
echo "OK"
|
||||
else
|
||||
echo "Fail: expected '${expected}', got '${actual}'"
|
||||
result=`echo "${result} + 1" | bc`
|
||||
fi
|
||||
|
||||
#####################################################################
|
||||
# first 'bignum' value (right on the boundary):
|
||||
# sbcl calculates (expt 2 60) => 1152921504606846976
|
||||
expected='1152921504606846976'
|
||||
|
||||
output=`target/psse 2>/dev/null <<EOF
|
||||
(progn
|
||||
(set! expt (lambda
|
||||
(n x)
|
||||
(cond
|
||||
((= x 1) n)
|
||||
(t (* n (expt n (- x 1)))))))
|
||||
nil)
|
||||
(expt 2 60)
|
||||
EOF`
|
||||
|
||||
actual=`echo "$output" | tail -1 | sed 's/\,//g'`
|
||||
|
||||
echo -n "$0 => (expt 2 60): "
|
||||
if [ "${expected}" = "${actual}" ]
|
||||
then
|
||||
echo "OK"
|
||||
else
|
||||
echo "Fail: expected '${expected}', got '${actual}'"
|
||||
result=`echo "${result} + 1" | bc`
|
||||
fi
|
||||
|
||||
#####################################################################
|
||||
# second 'bignum' value (definitely a bignum):
|
||||
# sbcl calculates (expt 2 61) => 2305843009213693952
|
||||
expected='2305843009213693952'
|
||||
|
||||
output=`target/psse 2>/dev/null <<EOF
|
||||
(progn
|
||||
(set! expt (lambda
|
||||
(n x)
|
||||
(cond
|
||||
((= x 1) n)
|
||||
(t (* n (expt n (- x 1)))))))
|
||||
nil)
|
||||
(expt 2 61)
|
||||
EOF`
|
||||
|
||||
actual=`echo "$output" | tail -1 | sed 's/\,//g'`
|
||||
|
||||
echo -n "$0 => (expt 2 61): "
|
||||
if [ "${expected}" = "${actual}" ]
|
||||
then
|
||||
echo "OK"
|
||||
else
|
||||
echo "Fail: expected '${expected}', got '${actual}'"
|
||||
result=`echo "${result} + 1" | bc`
|
||||
fi
|
||||
|
||||
# sbcl calculates (expt 2 64) => 18446744073709551616
|
||||
expected='18446744073709551616'
|
||||
|
||||
output=`target/psse 2>/dev/null <<EOF
|
||||
(progn
|
||||
(set! expt (lambda
|
||||
(n x)
|
||||
(cond
|
||||
((= x 1) n)
|
||||
(t (* n (expt n (- x 1)))))))
|
||||
nil)
|
||||
(expt 2 64)
|
||||
EOF`
|
||||
|
||||
actual=`echo "$output" | tail -1 | sed 's/\,//g'`
|
||||
|
||||
echo -n "$0 => (expt 2 64): "
|
||||
if [ "${expected}" = "${actual}" ]
|
||||
then
|
||||
echo "OK"
|
||||
else
|
||||
echo "Fail: expected '${expected}', got '${actual}'"
|
||||
result=`echo "${result} + 1" | bc`
|
||||
fi
|
||||
|
||||
# sbcl calculates (expt 2 65) => 36893488147419103232
|
||||
expected='36893488147419103232'
|
||||
|
||||
output=`target/psse 2>/dev/null <<EOF
|
||||
(progn
|
||||
(set! expt (lambda
|
||||
(n x)
|
||||
(cond
|
||||
((= x 1) n)
|
||||
(t (* n (expt n (- x 1)))))))
|
||||
nil)
|
||||
(expt 2 65)
|
||||
EOF`
|
||||
|
||||
actual=`echo "$output" | tail -1 | sed 's/\,//g'`
|
||||
|
||||
echo -n "$0 => (expt 2 65): "
|
||||
if [ "${expected}" = "${actual}" ]
|
||||
then
|
||||
echo "OK"
|
||||
else
|
||||
echo "Fail: expected '${expected}', got '${actual}'"
|
||||
result=`echo "${result} + 1" | bc`
|
||||
fi
|
||||
|
||||
exit ${result}
|
||||
Loading…
Add table
Add a link
Reference in a new issue