definition
procs
ranges and hashes
subclassing