From efa98de636ea700b0dd9033e7753a54babd8bd9d Mon Sep 17 00:00:00 2001 From: Robin Templeton Date: Mon, 4 Aug 2014 23:13:03 -0400 Subject: [PATCH] use defsubst --- module/language/elisp/boot.el | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/module/language/elisp/boot.el b/module/language/elisp/boot.el index fae86a2bd..0d1690527 100644 --- a/module/language/elisp/boot.el +++ b/module/language/elisp/boot.el @@ -71,15 +71,23 @@ (%funcall (@ (language elisp runtime) eval-elisp) form))) (eval-and-compile - (defun null (object) + (defsubst null (object) + (declare (lexical object)) (if object nil t)) - (defun consp (object) - (%funcall (@ (guile) pair?) object)) + (defsubst consp (x) + (declare (lexical x)) + (%funcall (@ (guile) pair?) x)) + (defsubst atom (x) + (declare (lexical x)) + (null (consp x))) (defun listp (object) + (declare (lexical object)) (if object (consp object) t)) - (defun car (list) + (defsubst car (list) + (declare (lexical list)) (if list (%funcall (@ (guile) car) list) nil)) - (defun cdr (list) + (defsubst cdr (list) + (declare (lexical list)) (if list (%funcall (@ (guile) cdr) list) nil)) (defun make-symbol (name) (%funcall (@ (guile) make-symbol) name)) -- 2.20.1