 Ayrat
    Ayrat 
    
    
        
        
        
        Даже императивный for
    
 
     Vasily
    Vasily 
    
    
        
        
        
        Все тлен
    
 
     Nikolay
    Nikolay 
    
    
 
     Nikolay
    Nikolay 
    
    
 
     Nikolay
    Nikolay 
    
    
        
        
        
        Норм пример?
    
 
     Vladislav
    Vladislav 
    
    
 
     Nikolay
    Nikolay 
    
    
 
     Анна
    Анна 
    
    
        
                    
                        
                    
                
        
        
        меня название слайда смущает
    
 
 
     Анна
    Анна 
    
    
        
        
        
        не самые приятные ассоциации с функциями в F# :)
    
 
     Nikolay
    Nikolay 
    
    
        
        
        
        Да ладно, крутые)
    
 
     Andrew
    Andrew 
    
    
        
        
        
        Я не знал, что так можно 😅
    
 
     Анна
    Анна 
    
    
        
        
        
        у меня были смутные воспоминания о том, что F# просто так не даёт на верхнем уровне shadow делать 🤔
    
 
     Nikolay
    Nikolay 
    
    
 
     Nikolay
    Nikolay 
    
    
        
        
        
        Я щас проверил, всё работает
    
 
     Анна
    Анна 
    
    
        
        
        
        ну вот или голова моя меня подводит, или ЯЧДНТ
    
 
     Анна
    Анна 
    
    
        
        
        
        потом посмотрю :)
    
 
     gsomix
    gsomix 
    
    
 
     gsomix
    gsomix 
    
    
        
        
        
        @Dolfik У тебя плохой минус, только для одного типа работает.
    
 
     Анна
    Анна 
    
    
 
     Nikolay
    Nikolay 
    
    
 
     Nikolay
    Nikolay 
    
    
        
        
        
        Сам по себе термин «ФП», как и любой ультрамодный тренд, намеренно расплывчат, чтобы легче было ловить неадекватов на форумах
    
 
     gsomix
    gsomix 
    
    
 
     Romɑn
    Romɑn 
    
    
        
        
        
        Вернулся @gsomix и боты перваратились в людей
    
 
     gsomix
    gsomix 
    
    
 
     gsomix
    gsomix 
    
    
        
        
        
        Хотя, конечно, здесь лучше бы арчвайл подошел.
    
 
     Nikolay
    Nikolay 
    
    
        
        
        
        Есть какие-нибудь годные картиночки для иллюстрации иммутабельности?
    
 
     gsomix
    gsomix 
    
    
        
        
        
        Сек.
    
 
     gsomix
    gsomix 
    
    
 
     gsomix
    gsomix 
    
    
        
        
        
        Какие-то чуваки, помнится, в лекции по хаскелю вставляли такие картинки с Гослингом.
    
 
     Nikolay
    Nikolay 
    
    
        
        
        
        Ну это мем
    
 
     Nikolay
    Nikolay 
    
    
        
        
        
        А хотелось бы типа объяснение, хз
    
 
     Nikolay
    Nikolay 
    
    
 
     Pavel
    Pavel 
    
    
 
     Nikolay
    Nikolay 
    
    
 
     Pavel
    Pavel 
    
    
        
        
        
        сигал иммутабелен по жизни
    
 
     Анна
    Анна 
    
    
        
        
        
        мне только каменные скрижали в голову приходят. или надгробные плиты
    
 
     Анна
    Анна 
    
    
 
     Nikolay
    Nikolay 
    
    
        
        
        
        Ну судя по пикче внутреннее состояние меняется
    
 
     Nikolay
    Nikolay 
    
    
        
        
        
        А внешнее нет
    
 
     Nikolay
    Nikolay 
    
    
        
        
        
        Он скорее грязная функция, которая притворяется чистой
    
 
     Nikolay
    Nikolay 
    
    
        
        
        
        Или забагованая чистая функция
    
 
     Hog
    Hog 
    
    
        
                    
                        
                            
                            А внешнее нет
                        
                    
                
        
        
        А это, кстати, тоже тема. Если мутабельность наружу не видна - так тоже можно. Мемойзейшн
    
 
 
     Nikolay
    Nikolay 
    
    
 
     Nikolay
    Nikolay 
    
    
        
        
        
        И это будет не чистая функция
    
 
     Анна
    Анна 
    
    
 
     Nikolay
    Nikolay 
    
    
        
        
        
        Но всё равно плохо
    
 
     Анна
    Анна 
    
    
        
        
        
        ну и чего плохо-то
    
 
     Nikolay
    Nikolay 
    
    
        
        
        
        Сайд эффекты
    
 
     Анна
    Анна 
    
    
        
        
        
        ты же стремишься писать читаемый код без багов, а не код без сайд-эффектов
    
 
     Анна
    Анна 
    
    
        
        
        
        если запрятанная в функцию мемоизация тебе ничего не сломает и будет нормально работать, чем это плохо?
    
 
     Nikolay
    Nikolay 
    
    
 
     Nikolay
    Nikolay 
    
    
        
        
        
        Сложно тестировать функцию
    
 
     Nikolay
    Nikolay 
    
    
        
        
        
        И разрабатывать тоже
    
 
     Nikolay
    Nikolay 
    
    
        
        
        
        Да и вообще, в чистой функции гораздо проще увидеть баг до того, как он всё сломает, чем в не чистой
    
 
     Анна
    Анна 
    
    
        
        
        
        Мы всё ещё про мемоизацию говорим? это же нормальный устоявшийся паттерн вроде
    
 
     Nikolay
    Nikolay 
    
    
        
        
        
        Нужно подумать
    
 
     Nikolay
    Nikolay 
    
    
        
        
        
        Но вообще это вроде не очень
    
 
     Pavel
    Pavel 
    
    
        
        
        
        "фп это не про отсуствие сайд эффектов это про комбинирование функций"
    
 
     Nikolay
    Nikolay 
    
    
        
        
        
        Слишком размыто
    
 
     Анна
    Анна 
    
    
        
        
        
        Не клади здравый смысл на алтарь отсутствия сайд-эффектов
    
 
     Pavel
    Pavel 
    
    
        
        
        
        это определение от хаскелистов
    
 
     Nikolay
    Nikolay 
    
    
        
        
        
        Так никто не говорит, что сайд эффектов не должно быть
    
 
     Nikolay
    Nikolay 
    
    
        
        
        
        Они всегда будут, но их нужно подальше уносить и изолировать
    
 
     Pavel
    Pavel 
    
    
        
        
        
        тогда получится академический хаскель
    
 
     Анна
    Анна 
    
    
 
     Nikolay
    Nikolay 
    
    
 
     Nikolay
    Nikolay 
    
    
 
     Nikolay
    Nikolay 
    
    
 
     Pavel
    Pavel 
    
    
 
     Pavel
    Pavel 
    
    
        
        
        
        особенно без примеров как это делать
    
 
     x
    x 
    
    
        
        
        
        Самого этот вопрос волнует. С одной стороны да, изолировать. А с другой мемоизация это ж стейт (под капотом). И этот стейт размазывается повсюду. Это ж нечисто
    
 
     Анна
    Анна 
    
    
 
     x
    x 
    
    
        
        
        
        Потому что стейт и сайд эффекты должны выноситься на края системы, а мемоизация вдруг может быть где угодно, в центре чистейшего функционального ядра
    
 
     Vladislav
    Vladislav 
    
    
 
     Анна
    Анна