favoring explicit function signatures instead of closures