Recently Written · git

blaher

Gilbert Baumann's blaher

git clone https://github.com/equwal/blaher

Log | Files | Refs


commit 9657f40a54eaecb486be7e257d99065c6e15b516
Spenser Truex <truex@equwal.com>
2023-05-27 18:32:03 -0300

blah v4

 blah.lisp | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/blah.lisp b/blah.lisp
index 899fe7a..0967da8 100644
--- a/blah.lisp
+++ b/blah.lisp
@@ -20,17 +20,17 @@
                           (remove-if-not #'symbolp template)))))
     `(lambda (,stream &key ,@(mapcar #'list params))
        ,@(mapcar (lambda (x)
-                   `(princ ,(if (symbolp x) (cadr (assoc x params)) x) ,stream))
+                   `(princ ,(or (cadr (assoc x params)) x) ,stream))
                  template))))
 
-(defun parse-blah (string &optional (start 0) (end (length string)))
-  (let* ((p1 (search "{{" string :start2 start :end2 end))
-         (p2 (and p1 (search "}}" string :start2 p1 :end2 end))))
-    (cons (subseq string start (if p2 p1 end))
+(defun parse-blah (string &optional (start 0))
+  (let* ((p1 (search "{{" string :start2 start))
+         (p2 (and p1 (search "}}" string :start2 p1))))
+    (cons (subseq string start (and p2 p1))
           (and p2 (cons (intern (string-upcase
                                  (subseq string (+ p1 2) p2))
                                 :keyword)
-                        (parse-blah string (+ p2 2) end))))))
+                        (parse-blah string (+ p2 2)))))))
 
 ;; (with-output-to-string (bag) (blah bag "Hi {{person}}!" :person "Joe")) => "Hi Joe!"