(define-for-syntax (hyphonize identifier) (string-join (map string-downcase (irregex-extract "[A-Z][^A-Z]*" identifier)) "-"))