I think the most important part of the question about experts is what an expert really is?
Is it a person with about 5 years daily experience in the same language? Why should he not be able to learn other languages at least at a 'okay' level and also be an expert in his primary one?
Or would you like an expert aged 35 to 40 which has about 20 years of Java experience and has never thought about other techniques?
Would be nice to hear some definitions of an expert here.