Size: a a a

2017 December 01

Aq

A64m AL256m qn[cores] in fprog_spb
но хаскель-то позволяет по другому дизайнить, просто никто особо не хочет
источник

Y

Yuuri in fprog_spb
Vyacheslav Mikushev
Наверное, никого не интересует, что нет silver bullet.
В какой-то статейке было, что единственное вменяемое решение expression problem - только динамика, только мультидиспатч.
источник

Aq

A64m AL256m qn[cores] in fprog_spb
а чем таглесс файнл не решение экспрешн-проблем?
источник

Y

Yuuri in fprog_spb
> если мне надо 1 раз в 1 месте протащить котика через список собачек
За что ты так с котиком? :'(
источник

VM

Vyacheslav Mikushev in fprog_spb
Yuuri
В какой-то статейке было, что единственное вменяемое решение expression problem - только динамика, только мультидиспатч.
Мы говорим только за выражения или за написание программного продукта в целом? Если говорить за ПО в целом, то silver bullet не существует. Надо думать головой. А котики и собачки вырванные из контекста примеры, которые ничего не доказывают.
источник

Y

Yuuri in fprog_spb
Лично у меня сложилось впечатление, что вчерашний доклад намекал, что "списки и хэшмапы" претендуют на silver bullet.
источник

Aq

A64m AL256m qn[cores] in fprog_spb
но в ФЯ фактически основной паттерн "интерпретатор", когда функция интерпретирует (ПМ) аст какого-то ЕДСЛ (АлгТД), т.е. экспрешн-проблем это центральная проблема дизайна в ФП
источник

Y

Yuuri in fprog_spb
Для ПО в целом.
источник

IZ

Ilia Zviagin in fprog_spb
Mariya Davydova
Сильная система типов всё же даёт некоторые гарантии. По крайней мере, ты не положишь кошку в список собак. А то, что тайпчекер Хаскеля не ловит ошибки использования нетотальных функций - так всё-таки он не Идрис и не Агда. (Да, я в целом фанат языков с сильной статической типизацией :))
Похоже вы так и не поняли, что Николай донести хотел...
:-)

Дело не в том, что в список собак положат кошку, а в том, что у нас будет список просто каких-то существ, и у них будут
может два свойства:
— тип существа
— количество ног,

и когда нам надо ПОСЧИТАТЬ ЧИСЛО НОГ В СТАЕ
нам в общем -то всё равно, кошки там, собаки или тараканы вообще.
Берём у каждого кол-во ног, если оно вообще указано, и прибавляем к общей сумме.
А если у кого-то не было вообще свойства КОЛИЧЕСТВО НОГ, его ноги мы не прибавим.
Да, это не типобезопасно, но зато когда у нас в стае появится Маугли, волки, медведь и удав,
мы ноги всех посчитаем без проблем.
источник

Y

Yuuri in fprog_spb
> А если у кого-то не было вообще свойства КОЛИЧЕСТВО НОГ, его ноги мы не прибавим.
И если у него концептуально должны быть ноги, но мы просто забыли добавить свойство, то код тоже будет работать, иногда даже правильно.
источник

AI

Andrey Ivanov in fprog_spb
И снова статические ахи - код правильно работает! )))
источник

IZ

Ilia Zviagin in fprog_spb
Yuuri
> А если у кого-то не было вообще свойства КОЛИЧЕСТВО НОГ, его ноги мы не прибавим.
И если у него концептуально должны быть ноги, но мы просто забыли добавить свойство, то код тоже будет работать, иногда даже правильно.
А откуда ты знаешь, должны у него быть ноги, или нет ?
источник

MD

Mariya Davydova in fprog_spb
К сожалению, я не попала на доклад Николая, поэтому не то чтобы на него отвечала :) На самом деле, эта тема - холивар сродни холивару iOS vs Android. Действительно, есть личные предпочтения, а есть бизнес-задачи. Если мне нужно написать небольшой код, решающий конкретную задачу, я скорее всего возьму скриптовый язык и спокойно поживу с динамической типизацией. Если же я сяду писать игру, я предпочту статическую систему типов. Всё же зависит от задачи и опыта решения разного рода задач конкретными девелоперами.
источник

AI

Andrey Ivanov in fprog_spb
Как будто написанные на статике софты для стабилизации вращения комсолета не раскрутили его в другую сторону что солнечные батареи оторвались - из за ошибки в знаке, которую тайпчекер не асилил
источник

IZ

Ilia Zviagin in fprog_spb
Mariya Davydova
К сожалению, я не попала на доклад Николая, поэтому не то чтобы на него отвечала :) На самом деле, эта тема - холивар сродни холивару iOS vs Android. Действительно, есть личные предпочтения, а есть бизнес-задачи. Если мне нужно написать небольшой код, решающий конкретную задачу, я скорее всего возьму скриптовый язык и спокойно поживу с динамической типизацией. Если же я сяду писать игру, я предпочту статическую систему типов. Всё же зависит от задачи и опыта решения разного рода задач конкретными девелоперами.
Он обещал этот же доклад но из Москвы выложить в виде видео
источник

Y

Yuuri in fprog_spb
Не все статики одинаково полезны...
источник

AI

Andrey Ivanov in fprog_spb
Да, Идрис даже про голову тебе полумает. Только логику за тебя правильную все равно не напишет
источник

Y

Yuuri in fprog_spb
В сишечке, например, такая "статика", что уж лучше динамика.
источник

IZ

Ilia Zviagin in fprog_spb
Yuuri
В сишечке, например, такая "статика", что уж лучше динамика.
Не сравнивай, в Си статика вообще по бедности, потому что надо как-то описать данные в памяти.
Нет боксов.
источник

Y

Yuuri in fprog_spb
Кстати, в дополнение к вчерашним тезисам
1. Предпочитайте функции макросам.
2. Предпочитайте данные функциям.
я предлагаю добавить ещё
3. Предпочитайте типы данным.
👽
источник