В какой-то момент вы возможно думали про себя - «Я бы с удовольствием писал код, но ключевые слова в выбранном языке, такая черствая скука». Ваш словарь гораздо богаче, чем у ваших коллег. В то время как они предпочитают DROP-ать объекты в базах данных, вы предпочитаете их «вычеркивать». Контрактник, с которым работал Чарльз И., принадлежал к этой элите.

Что он делал первым делом? Избавлялся от всех этих гадких циклов «while» понатыканных всюду его недалекими сослуживцами. Будучи уверен в том, что элегантный код должен воплощать в себе все грани слова «элегантный», он превратил все циклы «while» в циклы «whilst» (то же значение).

За день до истечения контракта он отправил все свои изменения. Разумеется, его код не компилировался.

«Скорее всего, проблема с вашей стороны», настаивал он. «На моей системе все работает». Для демонстрации он даже откомпилировал код на своей машине и показал, что тот работает.

Чарльз пошел разумным путем, просто сделал поиск с заменой всех «whilst» на «while», пересобрал проект, и все встало на свои места. Но все же было не понятно, почему все работало на машине контрактника. Через несколько месяцев они выяснили почему:

#define whilst while

Применяемый ими компилятор, использовал общий заголовочный файл, который он вставлял при каждой компиляции. Хранился этот файл в установочном каталоге и в нем просто были записаны директивы для компилятора. А единственным человеком, который об этом знал, оказался сообразительный контрактник.

Оригинал:http://thedailywtf.com/Articles/Elegant-Syntax-Error.aspx
Перевод:Евгений Виговский