diff options
author | BT Templeton <bpt@hcoop.net> | 2012-03-07 14:34:13 -0500 |
---|---|---|
committer | BT Templeton <bpt@hcoop.net> | 2012-03-08 17:08:30 -0500 |
commit | fc45b7e8e826d2e870f6e316749f87c20d083cb1 (patch) | |
tree | bbb5de4d567363503914994556632d531667921f | |
parent | bc612809929b85fdcb39bc17a15a53c88b43a8bd (diff) | |
download | guile-fc45b7e8e826d2e870f6e316749f87c20d083cb1.tar.gz |
integerp, wholenump return nil for non-numbers
* module/language/elisp/boot.el (integerp, wholenump): Call `integer?'
before `exact?' so that these predicates return nil for non-numbers
instead of signalling an error.
-rw-r--r-- | module/language/elisp/boot.el | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/module/language/elisp/boot.el b/module/language/elisp/boot.el index bec32b545..1ea86397f 100644 --- a/module/language/elisp/boot.el +++ b/module/language/elisp/boot.el @@ -237,16 +237,14 @@ (null (funcall (@ (guile) integer?) object))))) (defun integerp (object) - (and (funcall (@ (guile) exact?) object) - (funcall (@ (guile) integer?) object))) + (and (funcall (@ (guile) integer?) object) + (funcall (@ (guile) exact?) object))) (defun numberp (object) (funcall (@ (guile) real?) object)) (defun wholenump (object) - (and (funcall (@ (guile) exact?) object) - (funcall (@ (guile) integer?) object) - (>= object 0))) + (and (integerp object) (>= object 0))) (defun zerop (object) (= object 0)) |