Хотя сворачивание падежа довольно тривиально на английском языке, на некоторых других языках оно намного меньше. Если немецкий программист использует ß
имя переменной, что вы собираетесь считать эквивалентом в верхнем регистре? Просто к сведению, «ß» используется только в нижнем регистре. Ото, «сс» является эквивалентом - Вы бы компилятор обязан сопоставить их? Когда вы попадаете в Unicode, вы сталкиваетесь с еще более интересными проблемами, такими как символы с предварительно составленными диакритическими знаками или отдельные комбинированные диакритические знаки. Затем вы попадаете на некоторые арабские сценарии с тремя отдельными формами из множества букв, а не только с двумя.
В темные времена большинство языков программирования были нечувствительны к регистру почти по необходимости. Например, Паскаль начинал с мэйнфреймов Control Data, которые использовали только шесть битов на символ (всего 64 кода). Большинство таких машин использовали набор символов "CDC Scientific", который содержал только символы верхнего регистра. Вы могли переключаться на другие наборы символов, но большинство из них имели прописные или строчные буквы, но не оба, но использовали одни и те же коды для обоих. То же самое относится и к древним кодам Бодо и таким считающимся стандартом в первые дни COBOL, FORTRAN, BASIC и т. Д. К тому времени, когда стали доступны более мощные аппаратные средства, их нечувствительность к регистру была настолько укоренилась, что изменить их было невозможно ,
Со временем реальная проблема нечувствительности к регистру стала более очевидной, и разработчики языка в основном решили («реализованный», вероятно, был бы более точный термин), что когда / если люди действительно хотят нечувствительность к регистру, то лучше справляться с помощью вспомогательных инструментов. чем в самом языке.
По крайней мере, IMO, компилятор должен принимать ввод в точности так, как он представлен, а не решать, что «вы написали это, но я собираюсь предположить, что вы действительно имели в виду что-то другое». Если вы хотите, чтобы переводы происходили, вам лучше делать их отдельно, с инструментами, созданными, чтобы справиться с этим.