From 1330c456eebd9bdc3383052ecd7e60e64b8eecd7 Mon Sep 17 00:00:00 2001 From: Kyle Date: Fri, 10 Apr 2015 01:09:26 -0700 Subject: [PATCH] Add mksymb, mkkw. --- kutils.lisp | 13 +++++++++++++ package.lisp | 3 ++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/kutils.lisp b/kutils.lisp index 85ab14d..9383b85 100644 --- a/kutils.lisp +++ b/kutils.lisp @@ -41,6 +41,19 @@ additional args provided to the lambda." (return)))) new-form)) +(defun mksymb (&rest args) + "Create a symbol from arguments, upcasing strings as required." + (let ((args (mapcar (lambda (arg) + (if (stringp arg) + (string-upcase arg) + arg)) + args))) + (apply #'symb args))) + +(defun mkkw (&rest args) + "Create a keyword from its arguments." + (intern (string (apply #'mksymb args)) "KEYWORD")) + ;;; hash-table functions. diff --git a/package.lisp b/package.lisp index 1a32c16..8d22917 100644 --- a/package.lisp +++ b/package.lisp @@ -12,7 +12,8 @@ #:build-list #:partial #:macroexpand-n - #:count-macroexpansions + #:mksymb + #:mkkw #:enable-hash-table-reader #:hashkeys #:sethash