3rd party clj utility functions ,inspired by python