procs
hash and ranges
subclassing
overriding, dynamic dispatch
closures v. dynamic dispatch