Proc / Lambda
Ruby block
Abstract implementation