What is the difference between long, yen, and crave, as verbs and nouns both?
Longing - a strong feeling of wanting something or someone
Craving - an extremely strong desire for something (listing Longing as a direct synonym)
Yen - a strong desire
They're used as:
Long to do something / for something or someone; Have a longing for someone, something/to do something
Crave something; have a craving for something
Yen for something, someone / to do something; have a yen for something, someone / to do something
Is seems to me craving is used mostly when you talk about food or something (or something immaterial, like attention). Both long and yen strike me as somewhat poetic.
What are the differences between them, which is used more often and in what contexts? Do any of them sound archaic / stilted / poetic?