Dmitry
Интересно, а в Лаборатории Касперского уже сталкивались с такими программами, про которые не удавалось за конечное время сказать, что они точно вирусы или не вирусы?
Dmitry
@cblp_su ^ ;)
blini
*шутка про макось и бэкдоры*
Евгений
Я думаю что спустя конечное время на них натравливают вирусологов
Cheese
Cheese
задача любого вируса — не быть распознанным как вирус
Dmitry
Задача максимум
Cheese
раз в несколько лет такое случается
Cheese
компьютеры не всесильны
Dmitry
"Такое" -- что?
Cheese
простите. вернёмся к Хаскелю и машинам Тьюринга
Cheese
пишите опердень на Coq/Agda/Idris, чтобы она завершалась
Dmitry
Будем стараться!
Dmitry
Главное, самим при этом завершаться
Dmitry
http://aprove.informatik.rwth-aachen.de/eval/Haskell/
Dmitry
Библиотека хаскеля более-менее завершается ;)
Антон
Cheese
есть анализ завершимости для Хаскеля в Liquid Haskell. работает примерно так же, как в тотальных языках. грубо говоря, если функция имеет известную структуру для тотальных функций, то она тотальна, иначе — завершимость не доказана
Cheese
жестокий предложил бы ATS
Alexander
Я правильно понимаю, что Control.Category не предназначен для описания категорий с объектами-объектами?
Alexander
то есть он чисто для объектов-типов?
Alexander
и если не прездназначен, то есть ли либа чтобы сразу получить много полезных функций?
KLH
Всем привет! решил ФП попробовать и haskell в частности)
Пока еще ничего не писал, только читаю чат да статьи разные про хаскел, окамл, дизайн в фп стиле и тп, и даже много чего на удивление понятно)
Но это как с иностранным - читаешь- понимаешь - но сам написать еще не можешь. В целом код в разных хело-ворд примерах понятен (вроде бы :) ) - на монады, трансоформеры, линзы, сервантовские type-level "шткуки" , free-монады. Но вот как бы это все сложить вместе в конкретном случае непонятно. Поэтому решил на практике сделать какойто микросервис и походу разбираться.
Есть 2 вопроса (на самом деле больше)
edit - Вопросы отдельными сообщиниями сделал
KLH
1) Есть ли в каком то из фреймворков (пока рассматриваю только scotty или servant) возможность отдавать статические файлы? Но так, чтобы range header правильно обрабатывать и прочие стандарты соблюдать и не делать все самому.
Знаю, что есть stream servant-а, но он не соблюдает все эти стандарты и надо самому все это делать - не подходит.
Как вариант еще предлагают мидлварь из wai "заворачивать" в сервантовский Raw - но мне тоже не подходит, так как по условию задачи файл нужно отдавать только при соблюдении ряда условий, проверяемых внутри хендлера (разного рода авторизация закачек) - поэтому нужно как бы динамически "подсовывать" статик-хендлер , в противном случае отдавать 404. А в wai просто статичный роут на папку и все.
KLH
2) Есть ли какой-то сайт с задачками на "комбинаторы" ?) Типа, хитро скомбинировать zip'ы, fold-ы, map-ы, "совы" , аппликативы, bind и тп, чтобы поинт фри запись не вызывала стопор на 5 минут )
Anonymous
Всем привет! решил ФП попробовать и haskell в частности)
Пока еще ничего не писал, только читаю чат да статьи разные про хаскел, окамл, дизайн в фп стиле и тп, и даже много чего на удивление понятно)
Но это как с иностранным - читаешь- понимаешь - но сам написать еще не можешь. В целом код в разных хело-ворд примерах понятен (вроде бы :) ) - на монады, трансоформеры, линзы, сервантовские type-level "шткуки" , free-монады. Но вот как бы это все сложить вместе в конкретном случае непонятно. Поэтому решил на практике сделать какойто микросервис и походу разбираться.
Есть 2 вопроса (на самом деле больше)
edit - Вопросы отдельными сообщиниями сделал
Напиши бота, который из группы выделяет полезные сообщения (все сообщения с ссылками и сообщения ответы на сообщения с ссылками, а также все сообщения от админов - последнее опционально, т/к например не работает в этой группе)
KLH
Alexander
у нас аренда сервера CI стоит в 2 раза больше чем сервер прода, причем на CI даже свапфайл сделали от безнадеги :)
KLH
ради серванта ? или есть еще "известные" прожорливые пакеты?
Alexander
KLH
статические файлы через wai middleware
тоесть я смогу динамически подсовывать middlware ? допустим нужно сходить на другой сервер, проверить ссылку и если ОК - тогда "отдать" через мидлварь ?
Alexander
Alexander
KLH
KLH
можно
а можно еще одну подсказку? - тут нужен этот пакет wai-app-static? а то я все время про этот wai-middleware-static говорил, и он вроде не подходит
Alexander
кана
так
кана
пытаюсь поставить пакет, которого нет в стакадж-снепшотах (не говорите ничего про кабал и никс, я уже сам об этом думаю, но хочется решить в рамках стака)
кана
этот пакет требует servant-12
в lts-11.* servant-13
в lts-9 .* servant-11
кана
если указать конкретно версию servant-12, то там еще куча зависимостей требует указания версии конкретной, то есть это не выход
кана
я правильно понимаю, что возможности иметь локальные для пакета зависимости (не пытаться шарить версии между пакетами) нельзя?
Alexander
нельзя
Alexander
это не npm ;)
кана
токсик!
Alexander
не, но там же можно от нескольких версий одной либы зависеть изза неймспейсов, вроде
Alexander
тут ты загрузишь и символы и ещё развертки
Alexander
если бы ты использовал executable а не либу, то не шарить зависимости бы было можно
Антон
Аргх, все наработки по решению пропали. Заново кату писать
Yura
собрались хаскелисты в твиторе и обсудили свой PHPешный опыт...
Антон
Что-то совсем не выходит на ST написать. Придётся StateT брать
Alexander
ну чтож поделать
Alexander
только мне твиттер сломали?
Ignat
он сломан since 2006
Alexander
ну это понятно
Антон
Alexander
а что с ST не так?
Антон
а что с ST не так?
Постоянно ошибки типизации, слишком сложные, чтобы я мог в них разобраться. Ну и тот факт, что ST — монада, а не трансформер, тоже мешается
Sr
поясните, почему хаскель работает быстрее питона? Я всегда считал питон быстрее функциональных яп
Alexander
да даже ocaml быстрее питона будет...
Alexander
а вообще потому, что это компилируемый в нативный код язык, с большим чистом оптимизаций
Ilya
Alexander
ну быстрее кода на си, в которое вложено сравнительная работа
Alexander
но это скорее исключение
Anonymous
Ilya
Sr
по-моему вы тролль
Нет. Просто я адепт С и потому слабо представляю в чем они могут проиграть
Alexander
ну у нас был тестовый проект, где меряли анализ потоковых графов, на сишке есть библиотека stinger
Alexander
у нас была реализация на haskell которая обгоняла сишку
Alexander
но там было за счет того, что на больших данных в си возрастала фрагментация кучи, в то время как в haskell сжимающий сборщик
Alexander
это не самый часто возникающий эффект, но он есть
Alexander
а так-то у gcc/icc гораздо лучше с оптимизациями, и написать код на си всегда можно лучше