kb 10.08.2012 16:05 04a3831c

Как же я не люблю рефакторинг. Последние пол дня моей работы состояли из прогресса вида:
FAILED (errors=10, failures=41)
FAILED (errors=9, failures=28)
FAILED (errors=5, failures=13)
FAILED (errors=1, failures=5)
и нехилой такой прокастинации.

1. generatorglukoff 10.08.2012 16:05 Воркота

i know that feel, bro

2. gds 10.08.2012 19:22

поэтому уважаю статическую типизацию. С ней рефакторить всяко проще. (конечно, это не серебрянная пуля.)

3. kbgds /2 11.08.2012 07:47

согласен (в теории, практики не имею), но только не в этом случае совершенно. ну и в ней кроме борьбы с тестами прибавляется еще борьба с компилятором такая же.

4. gdskb /3 11.08.2012 11:12

согласен про то, что есть сцуко очень разные случаи. Сам уже полторы недели рефакторю статически-типизированное, высокоуровневое, точнее, подгоняю под новые требования. Логики много, той, что не проверить хиндли-милнером, а на coq перетащить ниасилил, "я только учусь".

Но в моих случаях обычно не "борьба с компилятором", а "компилятор подсказывает, какие места программы необходимо обойти вниманием", на основании таки типов и кое-чего ещё. Например, sum types / record types — первые всегда, а вторые периодически разбираются паттерн-матчингом, который, кроме очевидного "нет такого конструктора/поля" и "такой-то конструктор не заматчен", говорит "а вот тут ты матчишь все конструкторы, и, если добавятся, то прощёлкаешь", или "тут ты разбираешь все поля записи, они добавились, ты вероятно прощёлкал".

Do you really want to delete ?