Previous Entry Share Next Entry
2016-01

Мифы и легенды

Народ, скажите, а из вас кто-то видел своими глазами хаскель в продакшне? Мелкие бинарники тоже считаются.

This entry was originally posted at http://wizzard.dreamwidth.org/445000.html. It has comment count unavailable comments. Please comment there using OpenID.

  • 1
swamp_agr August 28th, 2015
Сам же и писал. https://github.com/swamp-agr/sagging
GUI-приложение, собранное под Windows и под Linux.
Успешно внедрено в ГУП. Получен положительный фидбэк, 13 месяцев в строю, полёт нормальный. Багов не обнаружено. Были CR, но бюджета не предусматривали, reject посему.

wizzard0 August 28th, 2015
Ага, спасибо

dmih August 28th, 2015
Ну если Ocaml за него считается, то у нас тут строчит один товарищ тонны кода на нем, в продакшен вполне.

wizzard0 August 28th, 2015
Софт на камле я видел и вполне даже использовал, не считается :) Но спасибо за data point :)

dmih August 28th, 2015
Вообще лично мне не нравится, что у нас куча кода на каком-то непонятном языке в непонятной парадигме. Поэтому это довольно серьезное испытание для меня как для руководителя с точки зрения либерализм в инструментах vs поддерживаемость решения.

slach August 28th, 2015
ну вон selectel вроде как вовсю хаскелит у себя и на хабре по этому поводу статьи пишет

juan_gandhi August 28th, 2015
Лично изготовлял мелкий бинарник.

Edited at 2015-08-28 02:49 pm (UTC)

amarao_san August 28th, 2015
Я, я. И на хабр писал об этом.

Но лично у меня ощущения скорее негативные, ибо люди в свои монадки семигрупоидные играли, а по сути всё делалось медленно и через жопу, т.к. на половину чихов надо было писать библиотеки.

zeit_raffer August 28th, 2015
> семигрупоидные

каламбур

nivanych August 30th, 2015
Я бы даже сказал, что телом бел.

thedeemon August 28th, 2015
А что считать продакшном? Я вот сегодня для одного коробочного продукта генерил код генерилкой на Идрисе (около тыщи строк кода).

nivanych August 30th, 2015
Это не хаскель, не считается.

nivanych August 30th, 2015
Не, ну правда, у него компилятор на хаскеле...
Так что, наверное, считается ;-)

nivanych August 30th, 2015
Таки совратили меня и вместо попыток использования расово-православной агды, начал писать на идрисе безбожном!!
Для моего программирования, в целом, удобнее хаскеля.
У него REPL охуительный, а вместе с емаксо-интерфейсом так и совсем.
Вывод типов вот даже до агдового не дотягивает, это неудобно.
Ну и строгость по умолчанию ;-)
Да, надо в них (типазависимых) развивать liquid-типизацию и теорию "орнаментов" (что суть теория полиномиальных функторов).
Орнаменты сильно облегчат выведение многих доказательств, работающей автоматики станет куда больше.
Ну а liquid-типизация, это ваще няшко блыо бы.
Бля, как меня ломает после хацкеля ;-)
Ты-то вон перед этим получил "прививку" в виде окамля ;-)

swamp_agr August 30th, 2015
А в чём выражается ломка?

nivanych August 30th, 2015
Первое, это привык к ленивости.
А в моих задачах, частенько, можно и не думать над расставлением аннотаций строгости, и так будет всё более-менее.
Ну и когда надо (если поток по объёму большой) думать, это как-то всегда очень просто проходит.

Второе, вот что совсем неудобно и прям ломает, это по сравнению с хаскелём, почти полное отсутствие вывода типов.
И связанные с этим невозможности написать удобные вещи, ну или даже точнее, что думать больше приходится.
Вот в where по поводу каждой мелочи типа m = n `mod` 2 типы писать удалбывает.
Ну и например, тупловые или списковые паттерны не получится использовать.
Впрочем, последнее связано с тотальностью.

swamp_agr August 31st, 2015
Надо будет попробовать, вероятно.
Спасибо.

thedeemon August 31st, 2015
Во многих отношениях идрис это хаскель 2.0, я потому о нем вспомнил.

Когда данные маленькие, на нем можно писать как привык на хаскеле, на разницу между строгостью и ленивостью должно быть тотально пофиг. А на не очень маленьких данных идрис все равно не работает.

С выводом типов там правда фигово, но помогает the - пишешь the Int $ n `mod` 2 и уже не надо лишнюю строчку тратить.

А что бесит - у меня один модуль на 700 строк тайпчекается 15 секунд даже в репле, компиляция в бинарник еще дольше.

nivanych August 31st, 2015
Я пишу `the` ;-)
Но это не так уж и много, чем помогает, а чем-то и хуже (менее аккуратно читается).
Модуль на 700 строк... Столько я ещё на идрисе не написал.
Вот как первую большую (строк 15 в where) функцию написал, попривык и стало легче ;-)
Ошибкой было в попривыкании вот что — начал сразу типы всякия вставлять, которые особенно и не нужны в той задаче. Например, Vect вставил и долго тупил, как некоторые вещи получше записать, а там вполне достаточно и списка.

Alexander Vershilov August 28th, 2015
Видел и принимал участие:
а. пару простеньких серверов один работающий с железкой, другой запускающий n вируталок и гоняющий между ними тесты (закрыты по разным причинам, хотя первый может даже ещё и работает)
б. бенчмаркилку openflow свичей (тоже даже что-то ей меряли)
в. HA решение (в продакшн пока не введено, через пару месяцев), считается?
г. софт, который используют для анализа всяких данных, типа моделирование состояния крови в зависимости от внесения различных препаратов
д. просто обёрки для мат софта.
Это то, что хоть на сколько то встречало реальное использование, были часть проектов, которые по разным причинам не взлетели. Перечислять чужие проекты с авторами, которых знаком, но сами проекты не трогал наверное не интересно?

swizard August 28th, 2015
https://bazqux.com

я собственноручно туда денег плачу, так что вполне себе успешный коммерческий проект в продакшне

develop7 August 28th, 2015
мало того, vshabanov говорил, что оно ещё и окупается


nivanych August 30th, 2015
Врёт, небось!

develop7 August 30th, 2015
точно врёт, любой vit_r подтвердит!

nponeccop August 28th, 2015
Мелкий бинарник у меня крутится, в составе того антифрода, в компании перла, ноды и крестиков.

А так делал подобие augmented reality, с glade/gtk и gstreamer но не справился с гстримером не по вине х-я и проект прикрылся )

(Deleted comment)
jakobz August 28th, 2015
Я как-то сидел на бенче и за зарплату писал пакмана с порталами и перемоткой времени взад. Ну, вперемешку с пресейлами всякими и прочим.
https://github.com/jakobz/HPacman

livejournal August 28th, 2015
Здравствуйте! Ваша запись попала в топ-25 популярных записей LiveJournal для Украины. Подробнее о рейтинге читайте в Справке.

vit_r August 29th, 2015
В продакшене чего только не увидишь. "Мы изучали это в универе, а потом решили взять, потому что ничего лучше не придумали"

Интересно то, что работает и поддерживается хотя бы лет 15.

wizzard0 August 29th, 2015
15 лет назад computing выглядел несколько по-другому. Я бы ограничился интервалом в 3-5 лет.

vit_r August 29th, 2015
Ничем он по-другому не выглядел. Просто народ вместо жабаскрипта писал на бейсике.

nivanych August 30th, 2015
Имхо, вы не правы.
15 лет назад, народ массово писал на C++.
И говорят, что и сейчас продолжает это делать!!

vit_r August 30th, 2015
Там, где серьёзное что-то, пишут на Фортране и С++. Тулы стали получше (местами). Ушли чистый С и Паскаль.

Я говорю о всяких "новых веяниях".

Массы пишут вечно на какой-то фигне.

Edited at 2015-08-30 09:15 pm (UTC)

nivanych August 30th, 2015
> Массы пишут вечно на какой-то фигне.
Буду цитировать без копирайта, так и знайте!

madf August 30th, 2015
У меня в продакшене крутится пара мелких бинарников для обработки данных GPS. И еще один в планах по другому проекту на замену скрипта на PHP для приема статистики с устройств.

nivanych August 30th, 2015
У меня куча мелких и не очень расчётных скриптов на хаскеле.
Сейчас вот перехожу на идрис и от строгости по умолчанию ломает чоттаа %)

avnik September 5th, 2015
pandoc кстати ;)
Вполне себе такой mature проект.
Или ты имел ввиду собственноручно написаный?

PS сорри за некропостинг

roastedcode September 7th, 2015
Еще один некропостер reporting.
Пара баннерораздавающих серверов, в продакшене полтора года, по 12к рпс в пике.
После того как обозначил где надо строгие вычисления (для меня это был страшный геморрой) - даже память не течет. Правда, Хаскель я знаю плохо и такое несложное приложение писал с непривычки неприличных три месяца.

wizzard0 September 7th, 2015
Ага, спасибо

  • 1
?

Log in

No account? Create an account