December 26th, 2009

Book

Cнова о кластере

Основная часть нагрузки - это DAWG lookups и ахо-карасики, с большими словарями (до 400 мб)

Кое-где можно генерировать полноценные DFA. Разумеется, теоретически можно всё загнать в один большой DFA, грамматика у меня регулярного класса. И я даже кое-где делаю это посредством pcre. Но исторически там ничего не было, кроме нескольких поисков в std::map<std::string>, поэтому получился адхок-парсер наверху с указанными поисками в отдельных местах.
Book

Агитпроп набирает обороты

По наводке xeno_by 

The story of Evil King Java and his quest for worldwide verb stamp-outage

Интересно сравнить это с агитками какого-нибудь Буча Сравните статью с противоположной по смыслу цитатой из старой книги Буча, оказавшей огромное влияние на раннего меня. Сплошные существительные! Это говорит лишь о том, что метафоры - это идиотизм. Оставьте их поэтам клоунам, политикам и маркетологам, продающим удлиннители члена. Collapse ) UPD: Дальше в книге Буч приводит пример "алгоритмической" (в терминологии Буча) декомпозиции "на глаголы" (в терминологии автора поста про существительные в Джаве):



Однако, это никакая не "функциональная" декомпозиция, как пытается представить автор поста о существительных и глаголах, а "процедурная", не имеющая к функциональному программированию никакого отношения. В общем-то, эта зацикленность на процедурной декомпозиции не дает людям нормально писать на Хаскеле: они видят вместо функций высшего порядка процедуры высшего порядка, что тоже неплохо, но не то.

Функции - это скорее прилагательные. Не "увеличить, а затем украсить список", а "украшенный увеличенный список". Т.е. не enlarge(decorate(list)), а enlarged(decorated(list)). Понятно также, что отсюда идёт и привычка рассуждать операционно, и желание inplace updates, и даже невозможность понять атомарную интерпретацию контейнеров.
Book

Дважды мудачество

Мой жизненный опыт согласуется с принципом бритвы Оккама: идиотские поступки окружающих гораздо проще объясняются их идиотизмом, чем какими-то скрытыми мотивами. Возможно, моя презумция идиотизма и тщательный подход к проверке на идиотизм - это и есть мудачество.
Book

CHR for Haskell

Вчера устроил двум исследователям CHR рождество - проапдейтил две из существующих трех реализаций CHR на Хаскеле, чтобы они собирались свежими компиляторами посредством кабала. Пока ни один не ответил. Бухают.

Самими CHR заинтересовался, дабы попробовать сократить размер тайпчекера HN0.

UPD: автор HaskellChr ответил. Пообещал проапдейтить после НГ. Жду второго.