Why are "put" and "but" different in their pronunciation?
closed as not constructive by Carlo_R., Kristina Lopez, tchrist, cornbread ninja 麵包忍者, coleopterist Feb 24 at 18:43
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or specific expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, see the FAQ for guidance.
English is over a thousand years old, and has been through so many changes in the meantime that even very competent speakers struggle with English as it was written a few hundred years ago, and that of a few hundred more is so different as to essentially be a different language entirely.
This has left us with a great many inconsistencies, and the fact that English borrows from different languages, at different times, with different degrees of Anglicisation, leaves us with many more (though not in this case).
Some of the reasons for particular cases are hard or impossible to track, and some are open to reasonable conjecture, while others we can make more reliable statements about.
The word put was in Middle English found as putten, puten, poten and a separate word pytan. It's believed it came from a late Old English word putung.
The word but comes from Middle English buten, boute, bouten, from Old English butan.
In Middle English, these words, along with many others with a u in them would have had a /u/ sound (like a French ou as in vous). So, they would have rhymed as their spelling suggests, though neither would sound quite like they do in most modern accents.
As you have probably noticed, accents differ greatly from each other in how they pronounce many vowels. Accents differ not just with space (which we can easily realise by listening to how different people pronounce the same word differently), but also through time, which leaves some record today (listen to recordings of people from several decades ago, especially working class people, and you may find their accent doesn't match how people of the same area talk), and also helps explain how the regional differences arose.
In the early Modern English period, the /u/ sound changed, to a /ʊ/ sound (like the oo in foot).
Then it changed to first a /ɤ/ sound, which then changed further to a /ʌ/ (the sound but has today) sound in some, but not all of the words. Generally whether it changed or not depended on the surrounding consonants, but this was inconsistent so even one-time homophones put and putt now have a different vowel.
So while but, cut, put, putt, fun, full, sugar once all had the same vowel, a change in vowel happening for some, but not all, of them split them apart. This also affected some oo words that had previously shifted sound to the same /ʊ/ sound (hence blood rhyming with dud rather than with good).
This happened in different areas at different times, and there are still accents where but and cut rhyme with put. This is also one of the reasons we've clues to what happened, since people in the mid 17th Century were noticing how the words rhymed in some accents, but not in others. (The split here is called "the foot and strut split" because those accents rhyme the words foot and strut, while others do not).
Now, while you'll often hear that spelling was inconsistent in English until relatively recently, this is only true up to a point; certainly it was a lot less firmly set than today, but there were certainly conventions followed (even if they differed by region) so it wasn't a phonetic free-for-all either.
Between this, and the lack of any clear way to differentiate the too sounds (all the more so earlier in the change), we still have the same u letter used to spell them, even though they now have different sounds.
The difference goes back more than a thousand years, so we would have to ask why these words were pronounced differently even in their earliest manifestations. I assume that the pronunciation was originally connected to the meaning. "Put," for example, is related to "push," so perhaps the forcefulness of the action was felt to require the somewhat "longer" sound of the vowel. This is conjecture, but it fits with the concept that many words began as verbal representations of real things.
Another possibility: These words (like many others) were connected to words in other languages. If an antecedent word in another language carried a particular pronunciation (for whatever reason), then that pronunciation might be carried over into the English version. (This doesn't always happen, but it's fairly common.)