accept functions and delays in :options
:validate-types form key
tests for :validate-types