Слова race в контексте race condition (гонка за ресурсами) и trap в контексте trap an exception зацензурили в исходниках .NET

Цензура в исходном коде .NET Framework
Пятничным вечером, проглядывая исходники с Reference Source, случайно наткнулся на подозрительно выглядящий комментарий:



Некоторые слова заменены на 4 тире. Ну ладно, иногда разработчики действительно бывают весьма экспрессивны и не стесняются резких выражений… Но при всем желании я не смог вспомнить ни одного ругательства, которое бы подошло здесь по смыслу. Откуда же оно взялось?
github.com/microsoft/referencesource/search?q=----&unscoped_q=----

Пропускаем случайные совпадения с ASCII-форматированием и натыкаемся на несколько других случаев, в которых все становится понятно из контекста:



Табуированное слово — «race». Все упоминания идут в контексте "race condition", то есть состояние гонки за ресурсы, а не человеческая раса. И тем не менее, они заменены.

Дальше — больше!





Кто-то всей душой ненавидит исключения? Кажется, нет. Предполагаю, табуированное слово здесь — «trap». Есть устойчивое выражение — «trap an exception», означающее перехват исключения, чтобы оно не всплывало вверх. Но у этого слова есть и другое сленговое значение.

Ну да ладно. Это же все комментарии, мало ли что в них написано. На качество кода-то не повлияет?..



Здесь цензура вырезала некие слова из текстовых констант, которые используются для идентификации локалей. Подозреваю, что в первом случае было слово «Simple», а во втором — «Culture», но что в них крамольного?

Особенно жестко досталось классу EnglishPluralizationService, который используется в EF6 для автоматической конвертации слов из единственного во множественное число и наоборот. Там порезано приличное количество словарных слов:





Большинство из них я не могу угадать, но t----zium — это trapezium (трапеция), а ch---is — это chassis (корпус).

К счастью, проблема наблюдается только в выложенных в данный репозиторий исходниках. Если декомпилировать настоящую сборку, никакой цензуры нет:

// Token: 0x0|400015F RID: 351
private string[] _uninflectiveWordList = new string[]
"bison",
"flounder",
"pliers",
"bream",
"gallows",
"proceedings",
"breeches",
"graffiti",
"rabies",
"britches",
"headquarters",
"salmon",
"carp",
"herpes",
"scissors".
"chassis",
"high-jinks",


Дискриминация — действительно серьезная проблема современного общества. Но очень грустно, когда под видом борьбы с ней выдают вот такое…