
Впрочем, если парсить ленивым haxml, то нихрена памяти и не жрется, масштаб — мегабайт на все.
Ну и еще два гига на Data.Map с миллионом элементов, но это уже похуй.
Кстати, есть чо thread-friendly для ассоциативных массивов?
Впрочем, если парсить ленивым haxml, то нихрена памяти и не жрется, масштаб — мегабайт на все.
Ну и еще два гига на Data.Map с миллионом элементов, но это уже похуй.
Кстати, есть чо thread-friendly для ассоциативных массивов?
Как няшно поутру написать какую-нибудь такую функцию → process = sortByFreq . filterAbbs . foldr addWord M.empty . concatMap words . getQueries
Так, haxml тоже отжирает по 6 гигов на 43 метра иксемеля. Пойду подолблюсь в hexpat.
Поймал себя на бугурте от отсутствия чего-то вроде decltype для сигнатур в хачкеле.
А, блеа. я ошибся и запускал не на той машине скрипты. В общем, в позапредыдущем посте не три гигабайта, а 6 с половиной.
Prelude Text.XML.Light.Input> xml !! 1
Elem (Element {elName = QName {qName = "?xml", qURI = Nothing, qPrefix = Nothing}, elAttribs = [Attr {attrKey = QName {qName = "version", qURI = Nothing, qPrefix = Nothing}, attrVal = "1.0"},Attr {attrKey = QName {qName = "encoding", qURI = Nothing, qPrefix = Nothing}, attrVal ... more →
Парсинг 43-мегабайтного файла с xml — 3 гига сожранной оперативки. Ленивость @ функциональщина.
А долбиться в комбинаторы с haxml мне ленивовато.
Документация уровня типичного опенсорса → http://hackage.haskell.org/packages/arch...
ХАЧКЕЛЬ даже площадь простейшей фигуры посчитать нормально не может, получается
% runghc Main.hs pts.txt 2
Perimeter: 14.348093105974003; area: 11.375000000000009
Отсортировать в обратном порядке? sortBy (flip $ comparing smth) вместо sortBy (comparing smth).
Это вам не ебля с rbegin/rend.
Зато понимание отношения монад, функций и join позволяет записать вычисление расстояния между двумя точками как композицию вычисления вектора между ними и join'а скалярного произведения:
dist2' = join (<.>) . uncurry diffVec
Задали по методам распознавания изображений запрогать всякую хрень. Питонопитушки уложились в сотню строк. Матлабопитушки уложились в 50 строк. Я-хаскельбог уложился в 20 строк :3
Освоил использование section'ов для выражения большего числа мыслей в point-free style. Теперь мой код еще более нечитаем. А вкупе с backflip-ами так ваще.
Почему abs :: a → a в определении тайпкласса Num? Я соснул с реализацией Num для векторов :(
Минут 15 писал калькулятор средневзвешенного двух цветов. Пришлось даже КАРРИРОВАТЬ @ ДЕКАРРИРОВАТЬ, и вообще, как-то страшно выглядит:
avgColor (c1, c2) (w1, w2) = foldl (++) "#" $ map (show' . (`div` (w1 + w2)) . (uncurry (+))) $ zip (wt c1 w1) (wt c2 w2)
Охуенно, ghci падает при вызове GSL'ного фиттера, а самописный вполне себе работает.
Чо-то я заебался профилировать свой генетический хаскель-код и решил перехуячить все на плюсах. С моим-то опытом напишу так же быстро и лаконично, зато летать будет, чую.
Cкажи мне, нахуя scoped type variables включается только для explicitly forall'd переменных?
Поел говна с системой типов, scoped type variables и экзистенциальными типами.
ghc 7.6.1. А я только 7.4.2 собрал, эх.
Впрочем, очень клево продвинули систему типов. Только вот http://www.haskell.org/ghc/docs/7.6.1/ht... делает из моего няшного хаскеля какую-то питонятню.
А вообще, конечно, рефакторить код на х-ле — одно удовольствие. За час переделал код с велосипедов и dsp на hmatrix, попутно разобравшись в их API и всем таком. Тайпчекер котик, всего лишь натыкал констрейнтов, где нужно, и все просто работает.
Из-за того, что Numeric.GSL.Fitting.fitModel жрет Double'ы, придется либо делать realToFrac везде, что сулит пиздец производительности, либо зафиксировать, что генетические алгоритмы работают с Double.
С другой стороны, нахуя им работать не с Double?
Сейчас мне предстоит увлекательнейший квест — попытки разобраться в хаскель-коде, написанном 10 месяцев назад.
0xd34df00d
ulidtko
kb
Minoru
komar
rapture
lukish
zw0rk
238328
Crazy_Owl
4da
L29Ah
werehuman
Elemir
amd63
octocat
magog
Voker57
cirno
asmer
rhinze
Eight
gelraen
MPogoda
odin
lexszero
Like-all
folex
folone
nexeuse
utros
zetoke
hedgehog
beardog
oreolek
hirthwork
werdn
clayrat
SirAnthony
Psykukumber
Ky6uk
eurekafag
DJm00n
zamotivator
failman
saransk
jabber
madInsane
whisper
svtk
Jarkko