From 95f05cafb8da2dc1a20a41b165c2e03c24d04099 Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Tue, 17 Jun 2014 06:59:46 -0700 Subject: * eval.c (not_null): New static function. (eval_init): Use null_f in existing registration of null and not. Add registration for not_null as "true", and for null_f as "false". * txr.1: Documented true and false. --- eval.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'eval.c') diff --git a/eval.c b/eval.c index d9acfda4..7339281e 100644 --- a/eval.c +++ b/eval.c @@ -3057,6 +3057,11 @@ static val and_fun(val vals) return item; } +static val not_null(val obj) +{ + return if3(nilp(obj), nil, t); +} + static val prinl(val obj, val stream) { val ret = obj_print(obj, stream); @@ -3224,8 +3229,10 @@ void eval_init(void) reg_fun(intern(lit("typeof"), user_package), func_n1(typeof)); reg_fun(intern(lit("atom"), user_package), func_n1(atom)); - reg_fun(intern(lit("null"), user_package), func_n1(null)); - reg_fun(not_s, func_n1(null)); + reg_fun(intern(lit("null"), user_package), null_f); + reg_fun(intern(lit("false"), user_package), null_f); + reg_fun(intern(lit("true"), user_package), func_n1(not_null)); + reg_fun(not_s, null_f); reg_fun(intern(lit("consp"), user_package), func_n1(consp)); reg_fun(intern(lit("listp"), user_package), func_n1(listp)); reg_fun(intern(lit("proper-listp"), user_package), func_n1(proper_listp)); -- cgit v1.2.3