Blah. So functions are fun and for me they are often a useful way to think about programs.
And then, for me, types more or less come with the territory. A function applied to an argument can be evaluated to a result value. When I think about a function, I tend to think about things like:
And that is like, type stuff, far as I can tell.
(Which is not to say that the thinking is necessarily in terms of a type system, or that any of this has a thing to do with type checking, or anything. Just, types, okay yes.)