саша
То есть имена a b c d e f не содержат никакой информации для читающего
Nicholas
Нет. Такие имена переменных ухудшают чтение кода, ибо снижают его информативность.
Лучше написать в 3 раза больше кода нежели непонятную однострочную ересь
Cat
То есть имена a b c d e f не содержат никакой информации для читающего
стандартная практика именования ресиверов в го
саша
Лучше написать в 3 раза больше кода нежели непонятную однострочную ересь
лучше искать компромис между лаконичностью, информативностью и простотой
Pawel
Лучше написать в 3 раза больше кода нежели непонятную однострочную ересь
К сожалению хаскель в основном именно про это - написать 10 строк ереси с маргинальным тулингом вместо 15 нормального кода с развитой инфраструктурой. К сожалению - потому что из среды хаскиля вышло много годных концепций
Daniel
коллеги
Daniel
ну елы палы
Daniel
хаскель - про ленивые вычисления и автоматическое распараллеливание. если говорить о технологиях, а не о синтаксисе
Daniel
этого нет и не будет в процедурном языке
Daniel
чего эту тему мусолить-то ежедневно
Nicholas
Для меня хаскель это про Карго культ и технический гламур (ИМХО)
Daniel
ну так вот это не так
Daniel
экономические модели нынче делают на хаскеле не потому, что гламур и карго культ, а потому, что ленивые вычисления
Nicholas
Аля если ты сидишь на арчлинуксе + i3, и пишешь в виме хаскель код то ты бог.
Je
экономические модели нынче делают на хаскеле не потому, что гламур и карго культ, а потому, что ленивые вычисления
Ленивые вычисления сами по себе абслоютно бесполезны, скорее хаскел удобный инструмент для записи формальных алгоритмов
Cat
эм, а как же система типов, тайпклассы, абстракции?
теперь я окончательно понял, почему филимоненков любимый комментатор
Pawel
И тут надо ещё сказать что в книге "Изучай хаскиль во имя Бобра", которую рекомендовали @kirilldanshin , ленивость практически не раскрыта (на уровне школы), а параллелизм даже не упомянут
саша
> автоматическое распараллеливание ХАХАХАХАХА НЕТ
саша
> автоматическое распараллеливание ХАХАХАХАХА НЕТ
@onokonem это ответ тебе из хаскель чата
Kirill
автоматическое распараллеливание и я в фаскеле не помню
Je
Я что-то про автоматическое распаллеливание тоже сломался, откуда бы, а если бы было, зачем тогда тащили бы примитивы синхронизации и легендарную stm
Kirill
ленивость там и без этого очевидна
Kirill
её объяснять нечего
саша
её объяснять нечего
объяснять нужно разве что как с ней в случае чего бороться
Pawel
Ко мне регулярно на собеседование приходят люди, которые утверждают что умеют в ФП и хаскиль. Я им всем задаю один и тот же вопрос, вскрывающих их полный нулизм в этой теме
Pawel
ни кто не отвечает
kås
Суть вопроса?
Pawel
в т.ч. те кто проработал на хакиле в касперском нескольтко лет
Je
скажешь с ходу чем каррирование отличается от частичного применения?
саша
зачем с ней нужно бороться?
ну как-бы чтобы данные лишние не копились, чтобы добиться в нужных местах более предсказуемого времени выполнения, есть всякие кейсы, где она не нужна, а скорее наоборот
Pawel
Суть вопроса?
посчитать среднее арифметическое с O(1) по памяти
Cat
ват?
Pawel
элементарно в голанге, не так ли?
Je
Pawel скажешь с ходу чем каррирование отличается от частичного применения?
Kirill
ни кто не отвечает
нет словосочетания "ни кто", это одно слово %) это настолько частая ошибка, что режет глаза. простите за оффтоп.
Cat
SIMD?
Cat
а, по памяти
Cat
лул
Pawel
элементарно везде
на 100%-тов уверен что в хаскиле ты зафакапишь это "элементарное" задание
Pawel
про хаскель, ФП, его синтиаксис и ленивость
Pawel
Это всё я к тому что якобы ленивость - это просто
Cat
про хаскель, ФП, его синтиаксис и ленивость
а если я умею в ФП, но не умею в хаскель, то какой вопрос вы мне задаёте?
Cat
вы что-то путаете
саша
на 100%-тов уверен что в хаскиле ты зафакапишь это "элементарное" задание
ты о том, что хаскель из-за своей ленивости пока не достигнет нормальной формы выражения будет складывать "вычисление" в память? ну так для этого же seq есть
Алексей
@bertolu4i Скажи в какой компании ты работаешь? Чтобы я к вам даже на собеседование не пошёл.
Алексей
вангую ответ: "мы тебя даже не позовём"
Ну прадва это ответ не на мой вопрос.
Daniel
@onokonem это ответ тебе из хаскель чата
ну супер. тогда он еще бесполезнее, чем я думал. вообще, чистые функции хорошо параллелятся, за это и любимы
Daniel
точно нету в хаскеле?
Daniel
раз ленивые есть - и это могло бы быть
Je
сами по себе точно не параллелятся, хаскел гарантирует точный порядок вычислений
Cat
есть же ParallelHaskel, но говорят он умер
Je
хорошо параллелятся задачи, которые могут параллелиться) на любых яп
Je
хаскель - функциональный язык, или нет?
Так, и что из этого следует?
Daniel
это значит, что нет никакого точного порядка вычислений для функций, которые не используются как аргументы к другим функциям
Daniel
не пересекается по параметрам - можно запускать параллельно
Daniel
хорошо параллелятся задачи, которые могут параллелиться) на любых яп
с чистыми функциями хоршо параллелящиеся задачи может выявить робот (компилятор, например)
heavycharged
кто как обходил вопрос связки vgo + IDE. IDE ругается на то, что нету пакетов ни в папке vendor, ни в папке GOPATH, но на самом деле они присутствуют, просто в другом месте, под контролем vgo. Может, есть какие-то решения?
Je
не пересекается по параметрам - можно запускать параллельно
обычно у тебя следующая функция зависит от результата предыдущей, data dependence порядок вычислений - вычислять-то можно функции, сворачивать к неизвестным, но делать без данных это бесполезно, а так конечно можно
Je
Истинно паралеллить можно какие-то числодробилки разве что, для всего другого - локи и stm
Daniel
мап-редьюс?
саша
мап-редьюс?
Редьюс не распараллелить по определению. Для map распараллеливание может оказаться нужным только в тяжёлых задачах, а мелких задачах это только оверхеда прибавит, поэтому автоматически делать это так себе затея.