(defun routep (x) (and (= (length x) 3) (destructuring-bind (method route handler) x (and (keywordp method) (stringp route) (or (functionp handler) (symbolp handler))))))