gsomix
Дона всегда можно поймать в слаке. ;)
gsomix
И Матиаса, например.
Vladislav
и там же про srtp спросить)
Ayrat
Я бы задал более провокационно, но он не ответит: какого хера так осторожно язык развивается?)
gsomix
Анна
Ayrat
тут возможны ответы - силёнок нет, желание есть. Желание нет, иди нахуй. Или дипломатичный - МЫ ОЧЕНЬ ХОТИМ и ЕСТЬ ПОНИМАНИЕ.
Romɑn
Ayrat
за скалу +1
Bonart
Ayrat
скалисты же следующую версию вообще смержились с сайд проектом
Fail
Ayrat
Не, они dotty вливают в scala 3
Ayrat
Всё меняют нахер)))
Fail
аа, в следующую
Ayrat
https://www.scala-lang.org/blog/2018/04/19/scala-3.html
Ayrat
Dotty will become Scala 3.0.
Fail
они ж в один прекрасный момент выбросили свои дефолтные акторы и сказали - теперь акка
Ayrat
Я могу их понять
Ayrat
мне скала больше нравится чем F# :) (ссаными тряпками не кидайте только)
Fail
нуууу
Fail
они идеологически разные же
Ayrat
Я не уверен что понимаю в чём идеология F# и Scala
Igor
Fail
чому вы так скалу не любите? приятный же язык
Romɑn
Romɑn
Слишком сишарпоподобный
Анна
Оооо, холивары пошли, какой язык круче, ееее
Ayrat
Ладно, я попробую оправдаться. Если бы я писал для работы, то Scala (т.к. рынок больше, F# вакансий в РФ можно по пальцам пересчитать, зарубежом удалённые вакансии редкость, а я сейчас не готов переезжать по личным причинам).
Для души - F# + Rust. Первый я хорошо знаю, т.к. работаю с ним постоянно и он мне нравится. Не нравится только отношение мелкомягких к нему и общее заторможенное развитие. Rust же походу взял лучшее из функциональщины и системы типов, недавно туда ещё асинк впилили - красотв.
Bonart
Раст - это такие плюсы с человеческим лицом
Ayrat
Мне скала КАК язык нравится меньше F#, но для зарабатывания денег очень хорошо.
Ayrat
Вакансий много и это не Java
Ayrat
gsomix
Ayrat
и это практично
Fail
Ayrat
писать на голом ООП или голом ФП можно только будучи больным ублюдком
Bonart
Котлин - это обезговненная ява.
Bonart
Скала - охаскеленная JVM
Vladislav
Vladislav
И иметь две реализации
Анна
Анна
Igor
F# это тоже ООП + ФП
Oop там для совместимости с .NET, на практике оно арктическими не используется
Ayrat
на ПРАКТИКЕ оно постоянно используется
Ayrat
т.е. на бумаге любители хаскеля его не используют ибо НЕЧИСТО :D
Ayrat
а в работе нет ничего страшного чтобы сделать пару классов с состоянием и методами
Ayrat
и мутабельность, если она изолирована - это ОТЛИЧНО. не надо голову ломать с рекурсией и пр
Ayrat
Ну, началось
Ayrat
Есть задачи посложнее чем замапить список
Анна
Дашоштыбудешьделать, говорят, ещё один питонщик не вынес испытательный срок в связи с запоем 😰 опять собеседовать их
Ayrat
Короче, ладно. Тут вопрос кто как делает. Я человек прагматичный юзаю и ФП и интерфейсики с mutable когда это проще. Платят-то не за чистоту функций, а за результат, который должен быть в том числе простой в реализации.
Чисто функциональная реализации (dot free, monads, side effect free, pure, composition, и куча операторов >> не всегда лучший выбор)
Как и чисто ООП, а то получаются IAbstractServiceManagerSingletonFactory
Анна
Короче, ладно. Тут вопрос кто как делает. Я человек прагматичный юзаю и ФП и интерфейсики с mutable когда это проще. Платят-то не за чистоту функций, а за результат, который должен быть в том числе простой в реализации.
Чисто функциональная реализации (dot free, monads, side effect free, pure, composition, и куча операторов >> не всегда лучший выбор)
Как и чисто ООП, а то получаются IAbstractServiceManagerSingletonFactory
мне кажется, что тут воинствующих функциональщиков и нет
Анна
Vasily
Для мутабельности в фшарпе есть мейлбоксы
Ayrat
Ну это из разряда - для мутабельности есть рекурсия. Так вопрос тоже можно решить, но иногда чтобы сделать мутабельность, можно просто взять mutable поле :D
Ayrat
тем более какие тормозные асинки в F# на цпу работе - нет спасибо
Vasily
С мутабельными полями фиг знает. С таким подходом проще на c# писать
Ayrat
Только из-за мутабельных полей переходить на язык без DU и type inference?
Ayrat
тем более она (мутабельность) редко нужна. Но если нужна, хорошо что она есть в F#
Vasily
Ну я придерживаюсь точки зрения, что для функциональных языков принципы построения кода все же иные
Ayrat
Vasily
Я не воинствующий
Vasily
Я немного о другом
Ayrat
есть мнение что F# позиционируется в лучшем случае как functional-first, а не purely functional, а на википедии вероятно вообще как мультипарадигменный
Vasily
Скорее о том, что мутабельность в моей практике возникает тогда, когда пытаешься писать в привычном императивном стиле
Vasily
Когда же мутабельность заменяешь на термин "состояние", открываются новые возможности
Ayrat
Ну ок. Вот предположим, была у меня задача недавно, сделать сервер, который принимает запрос на некую работу, регистрирует, кладёт её в очередь, отдаёт тут же ссылку на статус работы.
Есть разгребатор очереди который перемолачивает запросы и делает что-то страшное.
Какую структуру данных ты бы выбрал для связи ID запроса и собсно запроса?
Vasily
Кортеж
Vasily
Плюс два актора
Ayrat
Ок. как найти по ID запроса его состояние