Postponing selection of implementing fn when using function
Premature