I would use Fun instead of Value here, since the guard tells us it has to be a function. I might even use is_function(Fun, 1) to enforce an arity-1 check.