variable f {A : Type} : A → A eval (@f Bool) eval @f