Группа греческих учёных под руководством Диомидиса Спинеллиса провела интересное исследование чувствительности десяти популярных языков программирования к ошибкам и опечаткам при наборе текста программы. Ущерб от таких ошибок иногда может составлять многие миллионы, и способность языка обнаруживать их как можно раньше очень важна для разработки надёжных программ. Для тестирования использовались несколько примеров из проекта Rosetta Code — вики, на которой собраны реализации множества задач и алгоритмов на разных языках. На основании статистических данных о популярности языков, а так же некоторых практических соображений (наличие свободного компилятора и примеров на Rosetta Code) были выбраны следующие языки и компиляторы:
Язык | компилятор/среда |
C | gcc 4.4.5 |
C++ | g++ 4.4.5 |
C# | mono 2.6.7, CLI v2.0 |
Haskell | ghc 6.12.1 |
Java | OpenJDK 1.6.0_18 |
JavaScript | spidermonkey 1.8.0 |
PHP | PHP 5.3.3-7 |
Perl | perl 5.10.1 |
Python | python 2.6.6 |
Ruby | ruby 1.8.7 |