map?, vector? in core.clj