I'm my opinion, the best way to talk about functional programming isn't to contrast it with OOP, and say "it's when you don't have objects." After all, I believe functional programming is a concept long before OOP, in which back in those days it might've been contrasted with procedural and imperative code. But not even that, in my opinion.
It's not even to talk about composition nor first order functions.
Perhaps the thing to talk about is maybe the Alonzo-Church paradigms and im/mutability.