A method is a component of an object
I liked the definition of method used in Julia Language: a method is the implementation of a function for some concrete types of its parameters.
For example the following are distinct methods for the function sum(x,y):
sum(x:int, y:int) is distinct from sum(x:float,y:float) and sum(x:int,y:float) and sum(x:float,y:int).
I have a hunch that such definition can be restricted to match the OO static semantic by saying something like: a method in OO is the implementation of a function where only the type of the first argument is used for method-dispatching; when the method is defined inside the lexical scope of a class (data type) the first parameter is implicitly defined as this: ClassType...
I hope this makes sense to some PL scientist, at least. If it does, I hope to see a definition of methods that can be specialised to match different language sematics.