Hmm, why do you have to explicitly guard against setting the same default language? Performance?