Size: a a a

Scala User Group

2020 September 01

Oℕ

Oleg ℕizhnik in Scala User Group
давайте вы сформулируете задачу
источник

Oℕ

Oleg ℕizhnik in Scala User Group
которую хотите с помощью ТФ решить
источник

Oℕ

Oleg ℕizhnik in Scala User Group
а то написать какой-то ТФ без котов легко
источник

AS

Alex Sh in Scala User Group
Andreλ
Ну да не полностью связанные. Общий вопрос это не отменяет...
В интернетах вроде вагон и маленькая тележка инфы про это.
Всякие Functional programming with Cats и т. д. и т. п.
https://leanpub.com/fpmortals-cats/read
источник

Oℕ

Oleg ℕizhnik in Scala User Group
но вы же скажете "ой это не то, разве же такое можно честному человеку использовать"
источник

EH

Eric Hartmann in Scala User Group
Oleg ℕizhnik
коты ещё куда ни шло
ну вот в котах можно писать без монад, а в котоэффектах все отнаследовано от Monad
источник

A

Andreλ in Scala User Group
Alex Sh
В интернетах вроде вагон и маленькая тележка инфы про это.
Всякие Functional programming with Cats и т. д. и т. п.
https://leanpub.com/fpmortals-cats/read
Там очень поверхностно. Для самого начала пойдёт. Но там слишком простой пример.
источник

A

Andreλ in Scala User Group
Oleg ℕizhnik
давайте вы сформулируете задачу
Очень интересный выпуск был про ТФ в скалалазе... но так и остается ситуация:
Мужики, вот это ТФ -
trait AddAlg[F[_], T] {
def add(a: F[T], b: F[T]): F[T]
}

val res: F[Int] = addAld.add(a, b)

А теперь запилите на этом вон ту огромную опердень для бизнеса. )
источник

AS

Alex Sh in Scala User Group
Andreλ
Там очень поверхностно. Для самого начала пойдёт. Но там слишком простой пример.
Аааа….
Ну а чтобы кто-то показал как сложные проекты делать, то зовите к себе в компанию людей с опытом в TF 😉
Они все расскажут, покажут, научат 😁
источник

A

Andreλ in Scala User Group
Походу без  устройства в тинькоф полноценно раскурить удобства ТФ подхода не очень получится...)
источник

AS

Alex Sh in Scala User Group
Andreλ
Походу без  устройства в тинькоф полноценно раскурить удобства ТФ подхода не очень получится...)
Ну или самому идти туда, где такое используют на практике ))
источник

s

sherzod in Scala User Group
Andreλ
Походу без  устройства в тинькоф полноценно раскурить удобства ТФ подхода не очень получится...)
Если просеять хорошенько все обсуждения то можно выделить две кор фичи подхода F[_: Capabilities] vs IO

1. Строгое ограничение возможностей единицы кода и их специфицирование.
2. Возможность подставить любой рантайм (IO, ZIO, Monix.Task) *

* мало кому нужно используется как маркетинговая уловка
источник

GP

Grigory Pomadchin in Scala User Group
2 больше для библиотек
источник

A

Andreλ in Scala User Group
sherzod
Если просеять хорошенько все обсуждения то можно выделить две кор фичи подхода F[_: Capabilities] vs IO

1. Строгое ограничение возможностей единицы кода и их специфицирование.
2. Возможность подставить любой рантайм (IO, ZIO, Monix.Task) *

* мало кому нужно используется как маркетинговая уловка
Да, это понятно. Это вообще первое на что натыкаешься.
Вопрос чуток в другом.
Ну это как со спрингом например, читаешь доки, пробуешь все эти DI, AOP, аннотации, все вроде круто на пет проджекте и небольших проектах.
Приходишь в большой проект на спринге, а там ад и содомия... )
Вот очень хочется посмотреть среднекрупный проект с ТФ. Как там живется, где жмет, где болит...
Насколько удается сохранить чистоту подхода. А не так что "здесь так, вот тут так, а вот здесь мы рыбу заворчивали", как это обычно на спринг проектах бывает)
источник

ПФ

Паша Финкельштейн... in Scala User Group
Andreλ
Да, это понятно. Это вообще первое на что натыкаешься.
Вопрос чуток в другом.
Ну это как со спрингом например, читаешь доки, пробуешь все эти DI, AOP, аннотации, все вроде круто на пет проджекте и небольших проектах.
Приходишь в большой проект на спринге, а там ад и содомия... )
Вот очень хочется посмотреть среднекрупный проект с ТФ. Как там живется, где жмет, где болит...
Насколько удается сохранить чистоту подхода. А не так что "здесь так, вот тут так, а вот здесь мы рыбу заворчивали", как это обычно на спринг проектах бывает)
Так, вот не надо. Бывают идеально структурированные проекты на миллионы строк на спринге. Технология в скала мире непопулярная, но это не значит что никто её не умеет хорошо готовить
источник

A

Andreλ in Scala User Group
Паша Финкельштейн
Так, вот не надо. Бывают идеально структурированные проекты на миллионы строк на спринге. Технология в скала мире непопулярная, но это не значит что никто её не умеет хорошо готовить
Да, согласен. Бывают конечно) Давайте без холивара про джаву, это просто пример.
источник

ПФ

Паша Финкельштейн... in Scala User Group
Спасибо
источник

GL

Gennady Lebedev in Scala User Group
Паша Финкельштейн
Так, вот не надо. Бывают идеально структурированные проекты на миллионы строк на спринге. Технология в скала мире непопулярная, но это не значит что никто её не умеет хорошо готовить
нет, но значит что техноолгия никак не мешает (а в ряде мест и способствует) такой грязи
источник

A

Andreλ in Scala User Group
Gennady Lebedev
нет, но значит что техноолгия никак не мешает (а в ряде мест и способствует) такой грязи
Вот вы правильно поняли посыл.
источник

GL

Gennady Lebedev in Scala User Group
ФП в этом смысле ничуть не лучше
упороться и написать километр дичи - это легко)
источник