I know that objects that are registered to receive callback messages are often named as listeners (as in PaintListener, PropertyListener) or observers (as in ScopeObserver, TileObserver).
I also know both are, usually, implementations of the GoF Observer pattern.
My question is: when naming a class, is there any conceptual difference between calling it MyListener and MyObserver?
EDIT: the suggested question referenced as a duplicate of this one indeed addresses the same question, but none of the answers clarifies it for me. Not even the chosen one.
I don't want to know whether Listeners can be seen as being Observers GoF implementations. I want to know if there's any semantical reasoning when choosing one name or the other.
A comment on the original question, which I understand was posted as a joke, sounds just like what I expected the answer to be: "In the former one code watches the other code for movement, while in latter one code listens to the other code for any noise."