Size: a a a

2020 May 26

AV

Alexander Vershilov in Haskell
кана
нет
Не спорь!
источник

AV

Alexander Vershilov in Haskell
Yan Shkurinskiy
Интересное замечания насчёт большой детализированности констрейнтов
Норм, на самом деле
источник

AV

Alexander Vershilov in Haskell
Смотри, ты в своём решении можешь менять каждый из запросов, например добавив кеш
источник

AV

Alexander Vershilov in Haskell
При этом менять ты будешь 1 инстанс в одном месте, альтернатива - это делать большой объект, в котором будет много методов под достань то, достань это
источник

YS

Yan Shkurinskiy in Haskell
Alexander Vershilov
Смотри, ты в своём решении можешь менять каждый из запросов, например добавив кеш
тут не понял по поводу кеша .-.
источник

YS

Yan Shkurinskiy in Haskell
Alexander Vershilov
При этом менять ты будешь 1 инстанс в одном месте, альтернатива - это делать большой объект, в котором будет много методов под достань то, достань это
Ещё одна идея - иметь возможность максимально предсказать, что данная функция не может делать)
источник

YS

Yan Shkurinskiy in Haskell
(поэтому так подробно)
источник

YS

Yan Shkurinskiy in Haskell
я просто не знаю, насколько такая идея живуча, поэтому и решил спросить
источник

АХ

Алексей Худяков... in Haskell
кана
нет
Грядёт война левострелочников и правострелочников
источник

AV

Alexander Vershilov in Haskell
Yan Shkurinskiy
тут не понял по поводу кеша .-.
У тебя грубо говоря CanFind dbM b c определяет, что ты в dbM можешь вызвать запрос find, так?
источник

AV

Alexander Vershilov in Haskell
То, что оно обобщено значит, что этому методу ты передашь b и получишь c и больше ничего
источник

AV

Alexander Vershilov in Haskell
Т.е. внутре может быть любая неонка
источник

AV

Alexander Vershilov in Haskell
Например, не запрос к базе, а ты сначала сходишь в in-memory кеш, и только если там ничего нет, то пойдёшь в базу
источник

YS

Yan Shkurinskiy in Haskell
Alexander Vershilov
Например, не запрос к базе, а ты сначала сходишь в in-memory кеш, и только если там ничего нет, то пойдёшь в базу
Да, всё так
источник

YS

Yan Shkurinskiy in Haskell
Как раз с редисом когда-то так и работало
источник

AV

Alexander Vershilov in Haskell
Вот благодаря гранулярности классов типов (точнее инстансов) это можно делать гранулярно
источник

AV

Alexander Vershilov in Haskell
Альтернатива это делать class MyComponent в котором будет куча методов findX, findY и т.п.
источник

AV

Alexander Vershilov in Haskell
Ну или структура данных как в HandlePattern или Free, тут никакой разницы по сути
источник

YS

Yan Shkurinskiy in Haskell
Ну у меня Handle pattern снизу)
источник

AV

Alexander Vershilov in Haskell
У всех так
источник