Dr. Friedrich
А я им очень горжусь.
Dr. Friedrich
Издан приказ преследовать и ликвидировать всякого, кто будет пытаться использовать F# для гнусных целей.
Hog
Ilya
Можно по аналогии с раст-комьюнити пойти в фшарпплюс репу и закидать их ишью?
Диёр
Ilya
Диёр
Ilya
(опять кто-то забыл таблетки принять)
Dr. Friedrich
Он, вроде, в космос не летал
Dr. Friedrich
Бога не видал
Hog
Hog
разговоры про влашина сейчас демона призовут :)
Dr. Friedrich
Dr. Friedrich
Он тоже не сторонник всякой ерунды.
Ilya
Ilya
Ой, всё.
Ilya
У него справка есть.
Roman
Понимаю, но лучше найти нормальных друзей и/или обратиться к терапевту. Могу даже рекомендации дать. Но писать в чат откровенную ебалу — это не выход
Ilya
Так он ходит.
Hog
может это бот @Dolfik так обучился? :)))
Roman
Dr. Friedrich
Roman
Кроме того, что он выразил недовольство SRTP абьюзом
Hog
Всё плохое
Мы за всё хорошее - против всей хуйни...
Roman
Всё плохое
т.е. это так, мысли вслух а не что-то потенциально реализуемое?
Dr. Friedrich
Dr. Friedrich
Слишком сложно в компил-тайме отличить добро от зла.
Ilya
А в рантайме?
Nikolay
Dr. Friedrich
А в рантайме можно, но чисто эвристически.
Ilya
Ну вот пусть напилит с эксепшенами. YourCodeIsTooEvilException.
Roman
А в рантайме?
в рантайме легко: match thing with | Evil -> deprecate() | Good -> ()
Dr. Friedrich
Какая-нибудь гиперкубическая система типов
Roman
Брагилевский кстати на конфе рассказал, что зав. типам не место в ынтерпрайзе
Dr. Friedrich
Потому что в энтерпрайзе только зло
Roman
хотя мб его посыл был в том, что не надо все делать на зав. типах даже в прекрасном будущем, где они будут легкодоступны в языке
Анна
Roman
Vladislav
Dr. Friedrich
Dr. Friedrich
Давайте их приведём.
Ayrat
Ayrat
Хотя бы
Dr. Friedrich
Shub
Doge
Shub
большинство кейсов не имеют свойств как таковых, по сути, это длинные цепочки if-ов
TOV_MULTIMASSO
Вот только выглядят STRP довольно страшно, особенно если пытаться ими тайпклассы эмулировать
Doge
Doge
Но в каком-то cpu-bound на дотнете это один из очень немногих вариантов сделать абстракцию так, чтобы её код у тебя гарантированно, вне зависимости от настроения джита, заинлайнился.
Doge
Остальные альтернативы ещё хуже
TOV_MULTIMASSO
Я как-то попытался конвертануть приличный кусок кода в статику, но компилятору не понравилось. Не помню точно, что именно.
Vagif
Shub
если в типичном проекте таких свойств наберется на один-два теста - это уже выдающееся явление
в основном property-based используют из-за их фаззеров
Vagif
С этим согласен, но мы в основном пишем такие тесты для теста на прочность, когда в сценарий валятся все мыслимые значения.
Vagif
У Станнарда из Акки есть статьи об этом.
Vagif
http://www.aaronstannard.com/fscheck-property-testing-csharp-part1/
Ayrat
Ну тут не проперти, а именно фаззи тестинг. Что тоже норм
Ayrat
Ты смотришь крашится ли приложение, течёт ли, респонсив ли и пр
Ilya
Так по ссылке именно проперти тестинг тогда.
Ilya
Ну ок!
Ayrat
" для теста на прочность, когда в сценарий валятся все мыслимые значения."
Hog
тут непонятка с "проперти". проперти тестинг - это тестирование проперти системы - "для всех а и б, с = а + б > 0" ну или подобное.
Ilya
Ну так можно ограничить систему до одной функции.
Ayrat
Ayrat
Но я предпочитаю отделять проперти от фаззинга
Hog
почему? если первый достигается средствами второго?
TOV_MULTIMASSO
Shub
Shub
фаззинг удобно использовать, в том числе и для проперти тестирования
Shub
но необязательно