summaryrefslogtreecommitdiffstats
path: root/lib.c
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2011-12-11 23:16:44 -0800
committerKaz Kylheku <kaz@kylheku.com>2011-12-11 23:16:44 -0800
commit770b69a7495f5e1f83eaf0c5de5782a3db90ad7b (patch)
treea600dd018c53ac6394932f9c1b96007ce77e7eaf /lib.c
parent98d7a0cf623fb0e34ee00017909a315a32a8de38 (diff)
downloadtxr-770b69a7495f5e1f83eaf0c5de5782a3db90ad7b.tar.gz
txr-770b69a7495f5e1f83eaf0c5de5782a3db90ad7b.tar.bz2
txr-770b69a7495f5e1f83eaf0c5de5782a3db90ad7b.zip
* arith.c (zerop, gt, lt, ge, le): Functions from lib.c reimplemented
with bignum support. * eval.c (eval_init): Added bignump and zerop as intrinsic function. Renamed numberp to fixnump. * lib.c (zerop, gt, lt, ge, le): Functions removed. (numeq): Unused function removed. * lib.h (numeq): Declaration removed. * txr.1: Sections for zerop and bignump created. Changed reference to numberp to fixnump.
Diffstat (limited to 'lib.c')
-rw-r--r--lib.c34
1 files changed, 2 insertions, 32 deletions
diff --git a/lib.c b/lib.c
index 9432111d..01f1569a 100644
--- a/lib.c
+++ b/lib.c
@@ -857,31 +857,6 @@ val mulv(val nlist)
return reduce_left(func_n2(mul), cdr(nlist), car(nlist), nil);
}
-val zerop(val num)
-{
- return c_num(num) == 0 ? t : nil;
-}
-
-val gt(val anum, val bnum)
-{
- return c_num(anum) > c_num(bnum) ? t : nil;
-}
-
-val lt(val anum, val bnum)
-{
- return c_num(anum) < c_num(bnum) ? t : nil;
-}
-
-val ge(val anum, val bnum)
-{
- return c_num(anum) >= c_num(bnum) ? t : nil;
-}
-
-val le(val anum, val bnum)
-{
- return c_num(anum) <= c_num(bnum) ? t : nil;
-}
-
val gtv(val first, val rest)
{
val iter;
@@ -938,19 +913,14 @@ val lev(val first, val rest)
return t;
}
-val numeq(val anum, val bnum)
-{
- return c_num(anum) == c_num(bnum) ? t : nil;
-}
-
val max2(val anum, val bnum)
{
- return c_num(anum) > c_num(bnum) ? anum : bnum;
+ return if3(gt(anum, bnum), anum, bnum);
}
val min2(val anum, val bnum)
{
- return c_num(anum) < c_num(bnum) ? anum : bnum;
+ return if3(lt(anum, bnum), anum, bnum);
}
val maxv(val first, val rest)