I think the lambda x: max(abs(x)) should be the default when None is passed. I am -1 on the callable trick but maybe I just need to be convinced...