From 82fa3c361b7ca68726926d3cef744cbb41c1ea29 Mon Sep 17 00:00:00 2001 From: Matthias Andreas Benkard Date: Sat, 5 Jul 2008 23:49:19 +0200 Subject: Add functions FIRST ... TENTH. --- list-functions.lisp | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 list-functions.lisp (limited to 'list-functions.lisp') diff --git a/list-functions.lisp b/list-functions.lisp new file mode 100644 index 0000000..f379e19 --- /dev/null +++ b/list-functions.lisp @@ -0,0 +1,50 @@ +(%defmacro pushq args + (list* 'setq (car (cdr args)) (car args))) + +(%defun first args + (car (car args))) + +(%defun caar args + (car (cdr (first args)))) + +(%defun cadr args + (car (cdr (first args)))) + +(%defun cdar args + (car (cdr (first args)))) + +(%defun cddr args + (cdr (cdr (first args)))) + +(%defun caddr args + (car (cddr (first args)))) + +(%defun cdddr args + (cdr (cddr (first args)))) + +(%defun second args + (cadr (car args))) + +(%defun third args + (caddr (car args))) + +(%defun fourth args + (car (cdddr (car args)))) + +(%defun fifth args + (cadr (cdddr (car args)))) + +(%defun sixth args + (caddr (cdddr (car args)))) + +(%defun seventh args + (car (cdddr (cdddr (car args))))) + +(%defun eigthth args + (cadr (cdddr (cdddr (car args))))) + +(%defun ninth args + (caddr (cdddr (cdddr (car args))))) + +(%defun tenth args + (car (cdddr (cdddr (cdddr (car args)))))) -- cgit v1.2.3