From 9f9d3bcede3a4d57fb112011be7023fdd83db369 Mon Sep 17 00:00:00 2001 From: Matthias Andreas Benkard Date: Sat, 26 Jul 2008 11:23:45 +0200 Subject: Add macro %DEFMACRO*, a simple wrapper around %DEFMACRO. --- cond.lisp | 29 ----------------------------- 1 file changed, 29 deletions(-) delete mode 100644 cond.lisp (limited to 'cond.lisp') diff --git a/cond.lisp b/cond.lisp deleted file mode 100644 index 7b3d1cc..0000000 --- a/cond.lisp +++ /dev/null @@ -1,29 +0,0 @@ -(%defun list* args - (if (null (cdr args)) - (car args) - (cons (car args) - (apply 'list* (cdr args))))) - -(%defmacro let* args - (let ((form (car args))) - (let ((bindings (car (cdr form))) - (body (cdr (cdr form)))) - (if (null bindings) - (list* 'let nil body) - (let ((first-binding (car bindings)) - (rest (cdr bindings))) - (list 'let - (list first-binding) - (list* 'let* rest body))))))) - -(%defmacro cond args - (let* ((form (car args)) - (clauses (cdr form)) - (clause (car clauses)) - (rest (cdr clauses))) - (if (null clauses) - nil - (list 'if - (car clause) - (cons 'progn (cdr clause)) - (cons 'cond rest))))) -- cgit v1.2.3