glip/startup.lisp
2024-05-06 07:02:04 -05:00

16 lines
471 B
Common Lisp

(let defun (mac (name args body)
(list let name nil)
(list = name (list fun args body))))
(defun square (x) (* x x))
(let inc (mac (s) (list (q =) s (list (q +) s 1))))
(defun to-upper (str) (capture-upper (print str)))
(defun to-lower (str) (capture-lower (print str)))
(defun last (x) (if (cdr x) (last (cdr x)) (car x)))
(defun del-last (x) (if (cdr (cdr x)) (del-last (cdr x)) (setcdr x nil)))
(defun nth (a n) (if (is n 0) (car a) (nth (cdr a) (- n 1))))