made func combinator partially applicable and resulting functions only accept one argument