УМННБJ, ЯХВ. Войти !bnw Сегодня Клубы

Говнячить одноразовые скрипты на хачкиле довольно удобно получается, не хуже бидона какого-нибудь.
Захотел скачать видосы отсюда: https://www.scss.tcd.ie/Edsko.de.Vries/ct/catsters/linear.php

Prelude> page <- readFile "linear.php" (лол, HTTP-4000 не может в https)
Prelude> :m + Text.HTML.TagSoup
Prelude Text.HTML.TagSoup> let a = [x | x@(TagOpen "a" _) <- parseTags page]
Loading package bytestring-0.9.2.1 ... linking ... done.
Loading package array-0.4.0.0 ... linking ... done.
Loading package deepseq-1.3.0.0 ... linking ... done.
Loading package containers-0.4.2.1 ... linking ... done.
Loading package text-0.11.2.3 ... linking ... done.
Loading package tagsoup-0.12.8 ... linking ... done.
Prelude Text.HTML.TagSoup> let a' = filter ((TagOpen "a" xs) -> maybe False (isInfixOf "youtube") (lookup "href" xs)) a

<interactive>:5:52: Not in scope: `isInfixOf'
Prelude Text.HTML.TagSoup> :m + Data.List
Prelude Text.HTML.TagSoup Data.List> let a' = filter ((TagOpen "a" xs) -> maybe False (isInfixOf "youtube") (lookup "href" xs)) a
Prelude Text.HTML.TagSoup Data.List> let a'' = map ((TagOpen "a" xs) -> fromJust $ lookup "href" xs) a'

<interactive>:8:37: Not in scope: `fromJust'
Prelude Text.HTML.TagSoup Data.List> :m + Data.Maybe
Prelude Text.HTML.TagSoup Data.List Data.Maybe> let a'' = map ((TagOpen "a" xs) -> fromJust $ lookup "href" xs) a'
Prelude Text.HTML.TagSoup Data.List Data.Maybe> :m + System.Process
Prelude Text.HTML.TagSoup Data.List Data.Maybe System.Process> mapM_ (\u -> system $ "youtube-dl " ++ u) a''

#MT6REC / @plhk / 4056 дней назад

Хуйни не неси. Эта хуйня на баше вообще в одну строчку делается. В худших случаях на перле. Парсит хтмл тагсупом для одноразовой хуйни, вот еблан, а. Восторженный хаскеллист, стыдно должно быть таким.
#MT6REC/5BA / @anonymous / 4056 дней назад
@kagami Ну сделай мне на баше в одну строчку, умник.
#MT6REC/4B9 / @plhk --> #MT6REC/5BA / 4056 дней назад
Насрал таки.
#MT6REC/RJ9 / @ap / 4056 дней назад
@plhk curl https://www.scss.tcd.ie/Edsko.de.Vries/ct/catsters/linear.php | grep youtube | sed 's/.*<a href="\([^"]*\)".*/\1/' лол
#MT6REC/427 / @nobodyzzz --> #MT6REC/4B9 / 4056 дней назад
> Говнячить одноразовые скрипты суть хачкиля
#MT6REC/6QS / @kerrigan / 4056 дней назад
@nobodyzzz > sed 's/.*<a href="\([^"]*\)".*/\1/' > 2013 That's why we don't have flying cars.
#MT6REC/GMK / @plhk --> #MT6REC/427 / 4056 дней назад
@plhk и planes тоже
#MT6REC/5KS / @kerrigan --> #MT6REC/GMK / 4056 дней назад
@plhk Лол. Учись: `curl -s https://www.scss.tcd.ie/Edsko.de.Vries/ct/catsters/linear.php | sed -nr 's#.*(http://www.youtube.com/watch[^"]+).*#\1#p' | xargs -n1 youtube-dl`
#MT6REC/2XV / @anonymous --> #MT6REC/4B9 / 4056 дней назад
@kerrigan Полячок просто хуй и вообще не понимает нихуя. На самом деле всё ровно наоборот — в больших приложениях хаскиль бывает что окупается.
#MT6REC/ZI2 / @anonymous --> #MT6REC/6QS / 4056 дней назад
#MT6REC/N6A / @plhk --> #MT6REC/2XV / 4056 дней назад
@plhk И что ты сказать этим хотел? Надо выбирать инструмент под задачу, а не потому что пацаны считают что-то модным. Ты бы ещё на парсеке написал.
#MT6REC/X2W / @anonymous --> #MT6REC/N6A / 4056 дней назад
@kagami Вот именно, надо выбирать инструмент под задачу. А не парсить хтмл регэкспами.
#MT6REC/7PD / @plhk --> #MT6REC/X2W / 4056 дней назад
@kagami а бывает, что не окупается?
#MT6REC/MRW / @ninesigns --> #MT6REC/ZI2 / 4056 дней назад
@4da Большая часть хаскиль-софта тому пример.
#MT6REC/Q41 / @anonymous --> #MT6REC/MRW / 4056 дней назад
читаешь в интернете, как кто-нибудь успешно написал парсилку для html или послал байтик в com-порт на хаскеле - сразу возникает ассоциация с ребенком-дауном: смог написать три буквы - и его хвалят. развязал узелок - его хвалят. etc
#MT6REC/XRT / @ninesigns / 4056 дней назад
@kagami большая часть хаскель софта - это xmonad и darcs, я полагаю?
#MT6REC/C0Y / @ninesigns --> #MT6REC/Q41 / 4056 дней назад
@4da Это нормально для восторженных ньюфагов (сюда можно любой маргинальный ЯП подставить на самом деле). Но это ж удел школяров, чего полячок туда же катится-то.
#MT6REC/7PR / @anonymous --> #MT6REC/XRT / 4056 дней назад
@4da xmonad норм получился. Некоторые фреймворки типо Yesod и Snap хорошие. Не норм хуйня типо darcs, leksah, yi, house, frag. Абсолютно не конкурирующая ни с чем в своей области хрень.
#MT6REC/PIP / @anonymous --> #MT6REC/C0Y / 4056 дней назад
@4da Вся хаски-илита занята написанием библиотек йоба-абстракций из матана, поэтому любой пост, в котором решается какая-то реальная проблема, вызывает одобрение.
#MT6REC/51M / @plhk --> #MT6REC/XRT / 4056 дней назад
@plhk Да нихера. Вон снойберг, бос и донс годноту пилят.
#MT6REC/PWY / @anonymous --> #MT6REC/51M / 4056 дней назад
@kagami Они работку работают, однако.
#MT6REC/BLZ / @ap --> #MT6REC/PWY / 4056 дней назад
@kagami Годнота = yesod, snap, xnomad и поддерживающие библиотеки. Еще кметт в углу сидит, линзы надрачивает. Больше нихуя не пилится. По крайней мере не слышно.
#MT6REC/Q04 / @plhk --> #MT6REC/PWY / 4056 дней назад
@kagami Приведи примеры популярных сайтов на Yesod/Snap или не конкурирующая ни с чем в своей области хрень.
#MT6REC/V8D / @plhk --> #MT6REC/PIP / 4056 дней назад
@plhk Чем плохи регэкспы в данном случае? inb4 нетру
#MT6REC/1U4 / @nobodyzzz --> #MT6REC/7PD / 4056 дней назад
@nobodyzzz Тем, что оперируют на уровне символов, а не предметной области. В то время как хачки-код это практически дословный перевод задачи (если закрыть глаза на фромжастопонос): — выбрать все ссылки — выбрать из них те, что указывают на ютуб — запустить для каждой youtube-dl
#MT6REC/LBX / @plhk --> #MT6REC/1U4 / 4056 дней назад
@plhk ну хз, для одноразовых тасок не вижу смысла угорать по предметной области =) сколько ты кстати времени потратил?
#MT6REC/VKG / @nobodyzzz --> #MT6REC/LBX / 4056 дней назад
@nobodyzzz минуту
#MT6REC/LKB / @plhk --> #MT6REC/VKG / 4056 дней назад
@plhk Типичный пиздун.
#MT6REC/TUD / @anonymous --> #MT6REC/LKB / 4055 дней назад
@kagami пруф в оп-посте
#MT6REC/RVH / @plhk --> #MT6REC/TUD / 4055 дней назад
@plhk Блядь, ебать ты долбоёб. Какая нахуй предметная область? Где ты у себя увидел оперирование ссылками? Ты распарсил строчку в суп из тэгов, без каких-либо гарантий по типам, вытащил из них нисколько не валидируя хуйню, которая содержит внутри youtube (А если это ссылка на главную? У меня в однострочном регэкспе и то гарантий больше.), и запустил в ШЕЛЛЕ, БЛЯДЬ, ПИДОРАС, итоговый вызов youtube-dl, грязно оперируя со строчками. Нет, ну я понимаю, когда это делают на питоне, там хотя бы нормальная интроспекция у парсера (ебать долбоёб, для одноразовой хуйни парсить), но таким ебланствам обычно только законченные неудачники занимаются. Надеюсь что ты троллишь так. Что, впрочем, ничего не меняет, потому что троллинг тупостью делает тебя тупым, а не остроумным.
#MT6REC/ZX7 / @anonymous --> #MT6REC/LBX / 4055 дней назад
@kagami подгорело
#MT6REC/BJQ / @plhk --> #MT6REC/ZX7 / 4055 дней назад
@plhk Похоже на то.
#MT6REC/RW2 / @ap --> #MT6REC/BJQ / 4055 дней назад
@plhk Да кому ты пиздишь. Я уверен ты тагсуп минимум минут 5 гуглил.
#MT6REC/H3O / @anonymous --> #MT6REC/RVH / 4055 дней назад
@kagami Зачем мне его гуглить, если я им до этого уже 20 раз пользовался?
#MT6REC/858 / @plhk --> #MT6REC/H3O / 4055 дней назад
@plhk и что там можно гуглить 5 минут, если про него пишут в первой ссылке по запросу haskell html parsing?
#MT6REC/PTJ / @nobodyzzz --> #MT6REC/858 / 4055 дней назад
@plhk Ну охуеть. Если я постоянно решаю одну и ту же задачу и выполняю её за секунду, считается ли что она в самом деле так быстро выполняется? Представь что ты знаешь хаскель, а тэгсуп не знаешь. Потому что там может быть не хтмл, а жсончик или зумель, или ещё какая хуйня. Я её всегда решу за O(1) на элементарном регэкспе, а ты за O(n^2), пока будешь гуглить либу и читать доку (которой нет). Понял?
#MT6REC/HTC / @anonymous --> #MT6REC/858 / 4055 дней назад
@nobodyzzz Диалап!
#MT6REC/5J0 / @plhk --> #MT6REC/PTJ / 4055 дней назад
@kagami Чо, вчера O в школе проходили? n это что вообще такое?
#MT6REC/51Y / @plhk --> #MT6REC/HTC / 4055 дней назад
@plhk Количество оппосумов в бнваче.
#MT6REC/KT2 / @ap --> #MT6REC/51Y / 4055 дней назад
Я наконец понял, отчего у кагамки подгорело. Это из-за таких смешных чуваков: http://iichan.hk/s/res/141143.html#141239 Тут даже у меня дымок пошел.
#MT6REC/GF9 / @plhk / 4051 день назад
@plhk >7.4.1 Ппц он отсталый. Всё современное человечество давно на 7.6.2 и угорает по Type-level literals, Constraint kinds и Kind polymorphism вместе с Олегом и SPJ.
#MT6REC/9O8 / @anonymous --> #MT6REC/GF9 / 4051 день назад
@kagami Какие нахуй констрейнт кайндс, когда #141262.
#MT6REC/UQJ / @plhk --> #MT6REC/9O8 / 4051 день назад
ipv6 ready BnW для ведрофона BnW на Реформале Викивач Котятки

Цоперайт © 2010-2016 @stiletto.