Facebook опубликовал (https://code.facebook.com/posts/729709347050548/under-the-ho.../) исходные тексты утилиты flint (https://github.com/facebook/flint), предназначенной для выявления типовых ошибок и проблемных конструкций в коде на языке С++. Представлены два варианта flint: основной, написанный на языке D, и устаревшая реализация на языке C++. Код открыт под свободной лицензией Boost Software License.
Утилита была создана для внутреннего применения в системе рецензирования кода Facebook, для автоматической проверки всех вносимых изменений. Существующие lint-системы для C++ не устроили Facebook из-за низкой производительности и отсутствия поддержки стандарта C++11 (например, Clang во время начала разработки flint не предоставлял должной поддержки C++). Также была необходимость адаптации правил проверки для особенностей стиля разработки в Facebook.
URL: https://code.facebook.com/posts/729709347050548/under-the-ho.../
Новость: http://www.opennet.me/opennews/art.shtml?num=39190
> Также была необходимость адаптации правил проверки для особенностей стиля разработки в Facebook.Я видел их чудо-аналог boost: Folly, быдл0кодинг присутсвует на 60%
это ожидаемо что еще ждать от php компании
Домашнее задание предъявите. И к врачу бегом, а то уже зеленеете.
Обозвали С++ плохим. Смешные такие эти янки ... Юзайте g++, уже скоро С++14 ждём (Clang не показатель)
И не говорите! Русский православный С++ плохим обзывать...
std::cout << *Stroustrup->isNational:~$ NULL
Страуструп - датчанин.
Все правильно, просто у него точка с запятой не стоит в конце.
> Страуструп - датчанин.а ц++ (чтоб ему провалиться)создан в белл лэбз(чтоб им провалиться), если что. На базе ц (чтоб ему провалиться) тоже созданного в белл лэбз(чтоб им провалиться), и симулы (эта да, норвежская).
>Представлены два варианта flint: основной, написанный на языке D, и устаревшая реализация на языке C++.Ждем flintD для проверки самого себя.
На С++, разумеется, чтобы они могли проверять друг-друга.)
Первая используемая программа на D, которую я увидел.
Есть еще web-сервер vibe.d
http://vibed.org/
http://habrahabr.ru/post/142964/
Это какая-то недоподелка. Открыли 5 тыщ строк кода - целая новость.Ради интереса взял наугад код из первой попавшейся вакансии яндекса:
http://company.yandex.ru/job/vacancies/dev_computer_vision.xml
первое задание из теста. Там специально сделана куча ошибок, бОльшую часть из которых статический анализатор может найти. Этот код даже компилироваться не должен.
Единственное, что увидел этот flint:
./flint 1.cpp
1.cpp(5): Single-argument constructor 'Foo(int j)' may inadvertently be used as a type conversion constructor. Prefix the function with the 'explicit' keyword to avoid this, or add an /* implicit */ comment to suppress this warning.
1.cpp(24): Single-argument constructor 'Bar(int j)' may inadvertently be used as a type conversion constructor. Prefix the function with the 'explicit' keyword to avoid this, or add an /* implicit */ comment to suppress this warning.
не понял, а сам компилятор уже не проверяет синтаксис кода?