sometimes functions as values don't bind args properly, trying to figure out why