Отличная подача, прям Дроздов - "В мире функционального программирования"
@jojomajo4 жыл бұрын
ору) спс)
@maksimzolotoi33793 жыл бұрын
Тоже подумал что чисто дроздов 👍🏾😁
@hamzarylan78953 жыл бұрын
I dont mean to be so off topic but does someone know of a method to get back into an Instagram account?? I was dumb forgot the password. I would love any assistance you can offer me
@jonathangraham6893 жыл бұрын
@Hamza Rylan instablaster :)
@hamzarylan78953 жыл бұрын
@Jonathan Graham I really appreciate your reply. I found the site thru google and im waiting for the hacking stuff now. Seems to take quite some time so I will reply here later with my results.
@maksimsergeevich59394 жыл бұрын
С этим челом нельзя курить, а то залипнешь до старости)))
@granmini4 жыл бұрын
Очень классный! Волшебный лектор! Подумал о том как подать, и очень доходчиво, крутые метафоры, всё легко принимается. Не знаю, как на счет актуальности знаний, у меня тут не пригорело как у кое-кого, и я только-только начал учиться...) но слушать и понимать было легко и здорово. Спасибо.
@dmitriymedvedev703 жыл бұрын
Лекция супер! Такого лектора ещё не встречал! Спасибо!
@slimnino4 жыл бұрын
лектор от бога!!! вся лекция на одном дыхании!!! супер!!! спасибо!!!
@liz2k2 жыл бұрын
Я с большим удовольствием посмотрел (премьеру несколько недель назад) и блин насколько все доступно и интересно рассказано. А самое главное понятно! Прям плюсую!
@TheBakdag3 жыл бұрын
Можно пожалуйста еще лекций с ним раздобыть, очень круто рассказывает, тяжело оторваться!!!
@kookaburru3 жыл бұрын
Материал грамотный, без воды и хотя все это я уже знал, но всеравно удовольствием посмотрел :)
@AlexeyNeklesa4 жыл бұрын
Просто шикарный спикер ) Очень классный доклад!
@boycovclub3 ай бұрын
Очень крутая лекция
@АлександрНеизвестный-б9й3 жыл бұрын
Чувак бомба, красавчик, все доходчиво, смотришь лекцию как кино :)
@VYuhim4 жыл бұрын
Это было ахеренно! Аплодировал, когда он сказал: "Эпизод первый. Композиция" =)
@artemsites10 ай бұрын
Спасибо за лекцию!!!
@phat804 жыл бұрын
Не знаю, кому как, но мне императивный стиль всегда понятнее, так как он наиболее близок к работе самого железа. Любая функциональщина уводит тебя от понимания того, как это на самом деле работает. Никогда не понимал, в чем же тогда простота функционального подхода. Код короче? Да. Проще ли для понимания? Большой вопрос.
@Iaxls3 жыл бұрын
пиши тогда на ассемблере) без обид, но как процедурщина может быть понятнее нежели декларативный подход
@МаксимСидоров-й5ц3 жыл бұрын
@@Iaxls слишком декларативно, только машинные коды, они ближе к работе железа
@theban25172 жыл бұрын
Если обобщить все статьи по фп, которые я читал, то вывод такой: фп это не про понятность и не про удобство. Фп это просто ряд жестких требований, которые (по идее) должны увеличить эффективность работы программы. За счет чистых функций и декларативного подхода мы получаем не понятность, а возможность их вызова в любом порядке и, как следствие, распараллеливание.
@shalidor16192 жыл бұрын
Если твой код раздувается, и возвращаешься ты к нему через долгое время, то чтобы не читать тонны дерьма, ты просто смотришь на сигнатуру функций и их названия и клепаешь новые функции из старых. Если же твой код процедурный, то в тот момент, когда ты вернулся к нему, тебе проще переписать его заново, чем разбираться, как он работает.
@ancoopa4 жыл бұрын
Офигенный докладчик. Спасибо. :)
@onlytryhard80 Жыл бұрын
Велеколепный доклад
@AlexanderBukhtatyy4 жыл бұрын
Спасибо за доклад!
@swave2720 Жыл бұрын
Лайк за параметры и аргументы. сейм шит)
@orucqarayev4759 Жыл бұрын
Блин. какой классный диктор) какая страсть)
@phat804 жыл бұрын
Композэ - это пять! )))))
@dielectric72654 жыл бұрын
10/10 отличная подача материала)
@АндрейГобан4 жыл бұрын
"Пойти пораньше домой, и любоваться на звёзды!" - Хорошо сказано!
@feschenkoalex7544 жыл бұрын
Классный лектор. Продуманно подошел к делу. Лайк
@vladislavsnijko16694 жыл бұрын
он такой сказочный.. ))) И коалы грустят.. и код сложно отлаживать...
@АндрійРак-я8у3 жыл бұрын
Дуже цікаво слухати, я в захваті.
@AbasovIT2 жыл бұрын
Отличное выступление
@АлексейКузьмичев-м5я3 жыл бұрын
16:20 "Сейчас я выпью водички, потому что дальше будет интересно." ))))
@uM9nOJIb3OBATEJI94 жыл бұрын
Галат обучает ФП на JS. Смотреть без регистрации и смс.
@trustlang_ua4 жыл бұрын
как найти его?
@ЭдгарЕдигарян-ц3ъ4 жыл бұрын
Здравствуйте всем, где можно найти слайды ?
@pavell534 жыл бұрын
ссылки бы еще из лекции прикрепили.
@ryskin823 жыл бұрын
Когда лекция о программировании превращается в философию не теряя контекста.
@НиколайЛарионов-г5г4 жыл бұрын
Спасибо!) Очень круто!
@ruslanm.11209 ай бұрын
Подскажите где ссылка на презентацию?
@rusmemes3 жыл бұрын
это какая-то реинкаранация Дроздова??
@alexkol68144 жыл бұрын
Супер. 661 лайк уже. Еще 5 лайков и сам Сатана будет смотреть ету лекцию!
@myrichstory4 жыл бұрын
я 665-й поставил. Кто следующий?))
@warcraft.mp48892 жыл бұрын
Не знал что галат на jse пишет
@yourbadapple3 жыл бұрын
было полезно, очень круто объяснил, респект
@sergiy06413 жыл бұрын
Не понял, сначала сказал, что код должен быть понятным, а потом начал объяснять всякие извращения/костыли про каррирование и пр., что только усложняет написание и понимание.
@Iaxls3 жыл бұрын
функцию карри или композ, вы пишете один раз, или вообще берете из готовой библиотеки, важно просто понимать как она работает и какой профит дает. В хаскеле каррирование идет вообще из коробки. Но благодаря этим инструментам вы можете писать понятный, декларативный код, который очень легко отлаживать и дополнять.
@me2beats3134 жыл бұрын
очень грамотная речь, единственный момент - английский бы получить:) но в любом случае выдающийся лектор!
@kirillpavlovskii83424 жыл бұрын
славный парень)) берем функцию кампазе))))
@dimovich854 жыл бұрын
Супер круто! Спасибо!
@Антон-ю2п6е2 жыл бұрын
Рассказано о ФП в декларативном стиле - увеличивая скорость воспроизведения массив данных не теряет длину...
@kurasaored27754 жыл бұрын
Функция композе, мсье, ору 😂 В целом интересно
@A_A_A182 Жыл бұрын
Тяги бархатные)
@Алексей-ю8я7т4 жыл бұрын
Хорошая подготовка. Мне бы столько текста наизусть не выучить.
Подскажите, как зовут лектора? Есть ли у него еще видео?
@oleg_andrianov2 жыл бұрын
Очень круто. Но ничего не понятно.
@beyond65963 жыл бұрын
Про бабашку и порше было очень эпично)))
@MrElchenkov4 жыл бұрын
Как зовут этого чувака?) это просто лучший it спикер в мире)
@павелюшин-с2и Жыл бұрын
так в почему не написал функцию curry как она выглядит-то? смысл тогда от этой болтовни
@павелюшин-с2и Жыл бұрын
function curry(func) { return function curried(...args) { if (args.length >= func.length) { return func.apply(this, args); } else { return function(...args2) { return curried.apply(this, args.concat(args2)); } } }; } вот это говно
@martovskyy4 жыл бұрын
Сказочная атмосфера)
@AquaDiskoteque3 жыл бұрын
45:37 ({a, b, ...rest} = {a:1, b:2, c:3, d:4}); это деструктуризация объекта. А он spread показывает и делает иммутабильную копию, однако деструктуризация это вытягивания из объектов, функций и создания поля переменных или MDN YDKJS и Фелиган врёт?
@kotyarix Жыл бұрын
Послушать рассказ - пойдет, понять тему - ни в коем случае, все эти абстрактные аналогии с "приматыванием" только путают информацию в голове и отдаляют от понимания механизма и синтаксиса.
@lamer79053 жыл бұрын
Почему он так смешно говорит? Шабанул чтоли
@ТарасКлімарчук2-12ФІТ4 жыл бұрын
vjlink уже программист
@phat804 жыл бұрын
Наверное первый лектор, который пьет воду во время выступления прилично, не хлебая и не глотая звучно прямо в микрофон, транслируя свою физиологию на слушателей.
@nickpravda32493 жыл бұрын
Функции это кубики лего из которых мы конструируем легаси
@Gans_Kitchen4 жыл бұрын
Смотреть на скорости 1.25!!!
@phat804 жыл бұрын
1,5 минимум!
@sense32473 жыл бұрын
я смотрел на скорости 2.0
@BlindPewRus2 жыл бұрын
Похоже я тут один не в восторге от подачи.
@yomo1abh586Ай бұрын
Доклад интересный, но вызывает дежавю. Как буд-то перечитываю книгу "Функционально простой Js"
@HelloGoodbye-f6q4 жыл бұрын
20 лет жил, 20 лет не верил в любовь а тут...
@Mathemat1cs-13 жыл бұрын
а вот мой друг говорит что программирование без матем возможно )) эх жалко мне его
@palyanytsia10 ай бұрын
композэ, кьюайкью
@alexdang23574 жыл бұрын
лучший!
@whiteguards432 жыл бұрын
Болтун! Какие то сравнения приводит с внешним миром, вместо 5 минут, на 50 минут продлил
@pnlabs3 жыл бұрын
Чёрт, у меня табак и уголь закончились, надо пойти купить, иначе слушать невозможно :)
@nikitaosadchuk14673 жыл бұрын
компазЭ)
@ИльяЛуковицын-ш2м2 жыл бұрын
Какое-то днище честно говоря. Очень много воды, минимум конкретики, тупые приколы не по делу. Автор хотел сделать интересно и в принципе получилось интересно, но это не про программирование, это видео получилось про тупые шутки, про отвлеченные темы
@ElenaElena-st1mg9 ай бұрын
зачем учить функциональное программирование , работают же на другом виде?
@vladimir22894 жыл бұрын
Лектор топ!
@mikhaildevichensky64074 жыл бұрын
Хочу к нему в падаваны
@sashasagan25104 жыл бұрын
А что за умные ребята придумали лямбда-исчисление? Всегда думал что её Алонзо Чёрч разработал.
@rustonelove4 жыл бұрын
У тебя проблемы с методичкой - чини. Придумали имеет контекст "сейчас", т.е. говорится о теории в её текущем состоянии и тех, кто её до этого состояния продвинул. Так же, о лямбда-исчислениях говорится именно в контексте данной области. Тот, кто их придумал и развивал в рамках другой области мало кого волнует.
@radislaw3 жыл бұрын
Вернуть сразу булево выражение - НЕЕЕТ. Использовать тернарник, чтобы вернуть true или false - ДААА
@graezzywormz14383 жыл бұрын
Блядь а в Яндексе все такие душные? Куча ненужной воды. Программисты котики, смотреть на звёзды? Это на кого направлено? На маленьких девочек?
@hino24 жыл бұрын
Без обид, но лекция херня. Подача материала рваная, перескакивает туда сюда, уследить сложно, понять еще сложнее, воспринять - невозможно. Не представляю ЧТО вынесут из аудитории у себя в головах все слушающие.
@rustonelove4 жыл бұрын
40:00 - опять можно заметить шизофрению сектанта. Лозунги вида "это плохо потому что плохо". Какое отношение глобальные переменные имеют к сайд-эффектам я не знаю. Да и сектант сам не знает. Он взял это из базовой методичке, но ему не рассказали, что он сел в лужу. Потому как современная фп-методичка не считает глобальные переменные за сайд-эффекты. Причина проста и сектант опять сел в лужу. Да, в первых методичках были параметры и аргументы, но потом сектанты поняли, что это слишком говно и нужно внешнее состояние. И оно уже было в скриптухе - замыкания. Т.е. захват внешних переменных в тело локальной функции. Захват глобалов был всегда. И по-сути глобальные переменные и являются теми самыми замыканиями. Таким образом внешнее состояние является легитимным, если оно иммутабельно. На самом деле сектанты и здесь селе в лужу. Иммутабельность не состоятельна. Поэтому сейчас глобальное состояние может быть мутабельным - главное обеспечить семантическую иммутабельность. Каждая секта трактует это по своему и объяснить где начинается и где заканчивается эта семантика - невозможно. Но для простоты можно сказать так "с большей долей вероятности внешнее состояние не может влиять на результат исполнения функции, а функция на внешнее состояние".
@daedaliusX4 жыл бұрын
Он про это чуть позже рассказал на примере числа PI 41:45
@rustonelove4 жыл бұрын
11:00 - какую же херню несёт этот пропагандист. Функция в программировании никакого отношения к функции вне программирования не имеет. Когда кто-то начинает нести херню про "процедуру", про "не возвращает" - это уже клоун по определению. Достаточно посмотреть на то как он начал мямлить про какие-то бабкины вместо ответа на вопрос "почему?". Какой-то идиот эту херню написал в википедии и теперь сектанты её повторяют. Понятия "процедура" вообще никогда не существовало как антипод функции. Это просто где-то кто-то родил новый базворд, который сдох тут же по причине простой - унификация. Уже существовал базворд "функция" и он использовался и в академической среде и в программировании. В основном всё это засилие каких-то процедур после 60х - результат засилия паскаля и древних базвордов в 90/00 годах. В императивщине ещё с фортратна и уж тем более с си - функции были и возвращали значения. И если до си ещё были какие-то разночтения в базвордах в мейнстриме, то после уже нет. В конечном итоге - функция без return существует и такой она всегда была. Никакого разделения на функции/процедуры нет - сектант выдумал эту херню. И function в js значит именно то, что значит.
@rustonelove4 жыл бұрын
46:00 - вот она, вся сила пропаганды. "немножно упадёт". Во-первых начнём с того, что если в вашей программе есть ФП - производительности там нету в принципе. Во-вторых сектант сам себе противоречит. Если упадёт "немножно" - зачем заморачиваться и делать специальные либы? Ой. оказывается множно и пропагандист попытался всех обмануть? Ну это уже норма. И самое интересное. Сектант рассказывает про преимущества иммутабельности показывая мутабельные либы, которые лишь дают маня-иммутабельный интерфейс. И теперь угадайте - что будет, если мы попытаемся расспаралеллить код использующий эту либу? Ой, у нас появляется глобальное состояние, которое постоянно мутируется.
@daedaliusX4 жыл бұрын
Что думаешь о www.npmjs.com/package/object-path-immutable ? На проекте мы его успешно применяли с Redux как компромисс между иммутабельностью и использованием библиотек вроде ImmutableJs. > что будет, если мы попытаемся расспаралеллить код использующий эту либу? Можно пример для реалий JS?
@AbraKadabra0004 жыл бұрын
Мне кажется эти пропагандоны ФП, набежавшие в наш уютный жс из своих говноязыков, сильно лажают с жс, и поэтому предполагают, что будут лажать меньше. если заюзают ФП внутри. Они таким образом пытаются заявить о своей нужности.
@rustonelove4 жыл бұрын
41:50 - сектант врёт. Чистые функции не используют исключений - это самое основное. Но сектант вам об этом не сообщил. По-сути в контексте жабаскрипта не может быть чистых функций. Когда кто-то вам говорит об обратном - это клоун. Самое смешное, что та функция, которую пропагандист выдавал за чистую - не чистая. Причём на фундаментальном уровне. Но не понимать очевидных вещей - норма для залётных пропагандистов. Почти всегда в жабаскрипте эта функция будет возвращать nan, а nan != nan. sqr("a") === sqr("a") === false. Поломалась чистота. Причём никакие разговоры про "а вот у нас тайпскрипт" не работают - нан - это number и может получиться из двух не-нанов. Про исключения я уже сказал. Почти любая функция, даже (a, b) => a + b - имеет побочный эффект.
@johnstrayk52083 жыл бұрын
А какой побочный эффект?
@rustonelove3 жыл бұрын
@@johnstrayk5208 to_string
@johnstrayk52083 жыл бұрын
@@rustonelove можете подробней пояснить?
@rustonelove3 жыл бұрын
@@johnstrayk5208 + может триггерить to_string. const a = {toString() {throw new Error(); } }; const b = 123; a + b;
@johnstrayk52083 жыл бұрын
@Printer я тоже нихера не понял)
@rustonelove4 жыл бұрын
Каждый раз эти сектанты повторяют одну и ту же мантру. В целом, если кто-то начинает заливать про "декларативно" - сразу нужно понимать - в профессию пациент попал чисто случайно. Для тех, кто не понимает - объясняю. Во-первых пациент подменяет понятия не осилив семантику языка. ЯП описывает какой-то процесс, не важно как и что сектант называет - это никогда не изменится. И в данном случае процесс - это просьба к мамке, который должен быть описан. Сектант ни от какого императивного не ушел. Это банальная манипуляция. Во-вторых сектант сам себя загнал в ловушку следующей потугой. "мука" уже декларативное понятие. "возьми пеперони" - здесь тоже самое. По-сути сектант взял то, что он выше выдавал за декларативно уже выдаёт за императивно. А что такое мука? А почему её кто-то должен брать? Это базовые вопросы, которые поломают данного пропагандиста. На самом же деле всё очень просто. Процессы уплотняются. Вначале есть "замеси тесто" и процесс описывается в рамках одних примитивов. Далее происходит уплотнение и тесто само становится примитивом. Так же существует разделение труда и каждый занимается созданием примитивов на своём уровне - на этом сектант изначально и попался. Поэтому как только сектант возьмёт любое декларатитивно - он будет описывать императивно новый примитив, который уже для пользователя этого примитива будет декларативен. Т.е. никакого разделения нет и быть не может. Это попросту разных взгляд на одно и тоже с разных уровней.
@alexpipin36934 жыл бұрын
чувак ты ноунейм который говорит всем, что земля плоская, хотя уже все доказали и объехали землю 10 раз, если ты действительно настолько умен, так докажи делом, если нет, ты обычный забитый тролль
@rustonelove4 жыл бұрын
14:40 - сектант решил зайти с козырей. Никаких проблем с этим в строгой типизации нет - меньше слушай херни. И в том и проблема, что в жс"е с этим проблем нет, потому как жс скриптуха. Это базовые свойства скриптухи. На уровне реализации функция и не-функция ничем не отличается друг от друга. По этой причине она и не отличается и на уровне языка.
@Renton14284 жыл бұрын
Из вас двоих на сектанта здесь больше похоже вы
@rustonelove4 жыл бұрын
@@Renton1428 Обосновывай потуги.
@maksimka070319974 жыл бұрын
@@rustonelove подача твоих комментариев за тебя говорит. Вместо того, чтобы адекватно расписать, где автор неправ, ты агрессивно критикуешь, как типичный ПГМ, когда кто-то говорит, что бога нет.
@rustonelove4 жыл бұрын
@@maksimka07031997 Меня не интересуют потуги опущенных сектантов. К тому же, именно это можно применить к тебе, ведь именно ты и автор ПГМнутый сектант. Потому как это базовая защита сектантов "ты меня обижаешь, окорбляешь, а не критикуешь". Никакой ПГМ замечен в агрессивной критике не был. Как раз таки всё наоборот. Агрессивно критикуют ПГМ. К тому же я адекватно написал где автор не прав. А далее прибежал дошколёнок, который ничего не смог на мою критику ответить и начал ретранслировать дефолтную херню "да ты не прав, потому не прав", "да ты не прав, потому что такой" и прочее. Заметим, что отличии от этого убого я называю сектантов сектантами, но при этом я объясняю и доказываю почему это так. Данное убожество прибежало, назвало меня сектантом и всё. Т.е. оно сделало то в чём меня обвинило, но при этом я сам указанного в обвинение не делал и сектант не смог этого продемонстрировать. И самое важное - сектант даже в своих потугах запутался.
@maksimka070319974 жыл бұрын
@@rustonelove хорошо, как скажешь. Но по количеству комментариев и их объему не похоже, что тебе все равно, что "сектанты" скажут. Брехливого пса не перелаешь, я и не буду пытаться.
@rustonelove4 жыл бұрын
Кстати, ещё кое что важное. Сектант начала рассказывать про каринг/частичное применение. Правда он не рассказал зачем и почему, но это норма для сектантов. А важное тут то, что вся эта теория прорабатывалась ещё до привычных в скриптухе лямбд. arg => f(arg, const); - написать быстрее и проще, чем пердолинг с базовой методичкой. Здесь можно рассказать о "а если у меня много аргументов - все перечислять?" - нет. Потому как базовая методичка на самом деле ни о чего не спасает(на самом деле то, о чём говорит сектант протухло лет на 30. И там уже давно пытаются закостылить решения, но сейчас я не об этом). Причина проста - методичка позволяет либо добавлять аргументы к функции последовательно. Я не могу передать средний аргумент. Там, конечно же, сектанты сразу начнут орать "Да твоё api говно", но это лишь попытка снять с себя ответственность. Все эти показанные вам фокусы - работают только потому, что заранее созданы под методичку. Созданы такими, что-бы работать. В реальности же это работать не будет и не работает. За примерами можно сходить в любой код сектантов. Там будет либо прикрученные аргументы через объект, либо через лямбду.
@АнимусАнанимус4 жыл бұрын
От тебя возлюбленная ушла к ФП-шнику? Откуда такая озабоченность функциональщиной?😅 Больше года назад видел твои простыни ругательств под другими видео про ФП. Ну точно что-то личное 😂
@rustonelove4 жыл бұрын
@@АнимусАнанимус Кто вообще может уйти к подобным опущенцам? Я в окно выйду, если даже такая вероятность появится. >Откуда такая озабоченность функциональщиной? Чини методичку. Озабоченность есть у убогих - засирать эфир своими бездарными потугами. Ну и так уж получилось, что эфир общий. Это не моя вина, а их. Сами убогие меня не заботят - меня заботит то, что они каким-то образом вылезли из своих помоек туда, где их вижу я. И то, что они пытаются нападать на детей, которые по-сути беззащитны. К тому же, причём тут ФП? Я не разделяю сорта поехавших. И для меня первично то, что сектант врёт, а уже как и о чём конкретное и какой секты он является адептов - это уже после. В любом случае - хочешь со мною поспорить - пытайся. Не можешь? Зачем приходишь со своей нелепой шаблонной хернёй? Она не работала и работать не будет.
@AquaDiskoteque3 жыл бұрын
Я если честно тоже из доклада яндексойда нихуя не понял. Так, а если в js фун-ии это спец объекты с внутренними методами тогда о какой чистой Фп говорим, я тоже нихуя не понял.
@redhook7772 жыл бұрын
@@AquaDiskoteque а какая разница что под капотом? В js все объекты(кроме примитивов). Это не отменяет функциональных возможностей js
@AquaDiskoteque2 жыл бұрын
@@redhook777 или всё примитивы, кроме объектов. ебашьте в хаскель и будет вам счастье
@rustonelove4 жыл бұрын
43:30 - каждая минута повышает накал шизофазии. Мало того, что сектант как преимущество чистых функций назвал мемоизацию, которая не-чистая и ломает эту чистоту для функции. Дак ещё он обманул аудиторию. Дело в том, что моизация - это та самая несотоятельность чистоты и иммутабельности о которой я говорил. Это говно не может быть быстрым, поэтому что делают сектанты? Они берут своё говно, которое тормозит и прикручивают к нему мутабельные хаки. Дело в том, что вне ФП никто и никогда эту функцию бы не вызывал от одних и тех же аргументов 10 раз. И эти функции не тормозили бы, как тормозит ФП. Т.е. по-сути сектант вам за преимущество сектанта то, что в комплекте с ним идёт чистилка для дерьма, которым он всё обмажет в твоём доме. Но подожди. Если у меня бы не было сектанта - у меня бы не было дерьма и мне бы не нужно было ничего чистить. В общем такое оно - ФП. Просто нелепые потоки шизофазии и невежества.
@daedaliusX4 жыл бұрын
Но погоди, никто же не заставляет использовать мемоизацию на каждый чих. Это раз. Два - как и в случае с sort что плохого использовать любые хаки под капотом, получая на выходе сущности, которыми ты хочешь оперировать?
@rustonelove4 жыл бұрын
40:00 - здесь сам сектант показывает то, о чём я говорил. Здесь можно сказать, что он умножил свои потуги на ноль, но это норма для сектантов. Ведь он мутирует копию и нарушает своё же условие. Здесь остаётся уповать на то, что "здесь copy точно никто не использует, а вот с fruits не всё так однозначно" - только это обман. Опять же здесь спасёт только заинлайненный в выражение объект. Но это не является общим решением. В конечном итоге в реальности никакого явного разделения нет. И хрен ты разберёшься кто и где и что использует. По этому в том же хаскеле и другой минимально следующей методичке фп-дристне - подобного кода быть не может. sort() как функция с сайд-эффектом не может возвращать массив. По определению. На самом деле эта концепция так же не состоятельная. Она начиналась как какой-то контроль сайд-эффектов. Ситуация там примерна та же, что в жабаскрипте с промисами. Далее там прикрутили всякого сахара типа async/await и теперь уже всех похрен. Там пол программы в этих монадах, либо ансейф-кастах. И никакого контроля не получилось.
@rustonelove4 жыл бұрын
3:30 - пошла невероятная шизофазия. Первая проблема сектант - он жертва пропаганды. Т.е. такое понятие как "создаём новый массив" - это уже требование его секты. В "императивном стиле"(который существует только в фантазиях адепта данной секты) так никто не пишет. Ну и да, массивов не существует в ФП - пусть сектант изучит базовые методички. Вторая проблема - сектант не может мыслить. У него в голове каша. Он не понимает разницу между функцией, функциональным и прочим. Самое смешное тут то, что это не функция в контексте ФП и вообще никаких методов в ФП нет и быть не может. Третья проблема - сектант запутался. Он берёт лоулевел логику и сравнивает с хайлевел. Причём никаким образом сектант не объясняет - почему одно декларативно(и фп), а другое нет. Ведь там есть метод push - чем он отличается от filter? Очень просто это понять на примере for. Здесь сектант использует for, а не for of. Т.е. наличие здесь переменной - это следствие использование более общей, более лоулевел конструкции. И императивно точно так же можно использовать for of и переменной не будет. Т.е. сектант наврал. Тоже самое со всем остальным. Был бы сектант не залётный, а более компетентный - он бы зашел по нормальной методичке. Типа filter является функцией высшего порядка и такое свойственно и исходит из ФП. И какие-то неофиты зелёные в это даже поверят. Но, по очевидным причинам, это полная чушь. В императивщине всё это было тогда, когда у ФП была голая жопа и лисп(не особо от голой жопы отличается).
@AbraKadabra0004 жыл бұрын
аплодирую стоя
@HOTBOY99614 жыл бұрын
та в яндексе одни бездари, тебе на голере где то в воронеже виднее оно и понятно
@rustonelove3 жыл бұрын
@Printer t me proriv_zaparti
@rustonelove3 жыл бұрын
@Printer - мне лень что-либо писать очередному дошколёнку в этой помойке.
@ЮрийДумов3 жыл бұрын
Полный писец подачи. Пример зас... мозгов
@rustonelove4 жыл бұрын
42:30 - ой, а тут у нас пропагандист запутался в показаниях. Глобальная переменная же делает функцию нечистой, а теперь вдруг какая-то константность появилась? Ну и в целом как-то быстро он убежал от сайд-эффектов. Просто лозунг вкинул и в кусты.
@rustonelove4 жыл бұрын
Композиция не имеет никакого отношения к ФП. Действительно в математике была "линейная" обратная запись, но никакой практико-применительной теории за ней не стояло и чейнинг в том же хаскеле не является наследием той записи. Вся теория была проработана в юниксе, ооп и прочем. В первом пайпы, а во втором чейнинг. Причём и то куда более состоятельная концепция, потому как позволяет не только выход объединять со входом, но и конфигурировать каждую стадию дополнительно. У сектантов есть попытки решить эти проблемы через частичное применение/каринг. Но в любом случае это костыли прикрученные сверху после того, как натягивание базовой концепции провалилось. Само частичное применение и каринг во многом противоречат базовой фп-методичке и являются просто альтернативными сектантскими названиями того, что было везде и всюду. Единственное, что там во многом путает людей - это именно скриптушная природа ФП. Поэтому когда сравнивается ФП и императивщина - нужно сравнивать одно и другое. А люди в основном склонны сравнивать скриптуху и статические языки. Так делать ненужно.
@alexanderkartavtsev88654 жыл бұрын
надеюсь, ты доволен собой?
@daedaliusX4 жыл бұрын
@@alexanderkartavtsev8865 А вы собой довольны? К чему вопрос? Предлагаю вести конструктивный диалог. Twinkle где-то нас обманывает, не договаривает?
@alexanderkartavtsev88654 жыл бұрын
@@daedaliusX конструктивный диалог с человеком, который использует слова "опущенный", "поехавшие", "завывания сектантов"? Позвольте отказаться от такого диалога
@rustonelove4 жыл бұрын
Открою ещё одну тайну - адептам пропаганда рассказывает, что типизация имеет какое-то отношение к ФП. Но нет, опять обманули. Когда ФП сидело с голой жопой и лиспом(без всяких там сигнатур, типизаций, массивов, функций) - в императивнище уже была типизация. ФП всегда относилось к классу скриптухи. Т.е. к динамической типизации, к gc и прочим прелестям. От того там и взялись все эти функции высшего порядка и прочее. На самом же деле это просто свойства скриптухи. Когда у тебя gc и динамическая типизация - у тебя никаких не проблем с замыканиями, локальными функциями и прочим. И уже из скриптухи всё это перекочевало в ФП.
@danzankekshaev57424 жыл бұрын
Я прекратил просмотр, когда он сказал "берем функцию композе..." 20:35
@danzankekshaev57424 жыл бұрын
как человек может работать в яндексе и говорить КОМПОЗЕ!
@MaxLimas4 жыл бұрын
@@danzankekshaev5742 От этого человек становится менее программист? Или может методы перестают работать? Пофиг кто как называет, ибо всё равно ясно о чём речь.
@danzankekshaev57424 жыл бұрын
@@MaxLimas это показатель его общего образования, английский язык имеет огромное значение для программиста, сегодня он говорит кампазе, а завтра не так прочтёт документацию
@Chpokman414 жыл бұрын
@@danzankekshaev5742 как "композе" показал тебе "показатель общего образования"?
@phat804 жыл бұрын
@@Chpokman41 я тут не занимаю чью-то сторону, так не знаю, может чел хорошо знает немецкий или испанский, но знание хотя бы одного иностранного языка это показатель образованности все-таки. Если человек считает себя образованным, то иностранный язык неплохо бы знать, хотя бы один и хотя бы на базовом уровне. Ну не может просто такого быть, что у него в школе или институте не было иняза, особенно учитывая его возраст. Для меня всегда странно видеть в современном мире человека, который не знает никакого языка кроме родного. Ведь программа любого учебного заведения включает иняз, что было стандартом еще при СССР.
@rustonelove4 жыл бұрын
44:00 - очередной сеанс шизофрении. Пропагандист вбрасывает лозунги даже не пытаясь в какое-либо обоснование. Кешируемость никаким образом не зависит от чистоты. Та херня с момизацией - убогий костыль для самой чистоты. Вне чистоты этой проблемы нет. Сама момоизация лишает функцию чистоты. Любой кеш мутабельный. Опять же простота - основания? А нет оснований. Ссылочная прозрачность. Тут нас сектант зачитывает первую строчку из википедии, которая ничего не значит. Она не является преимуществом сама по себе и сектант не учитывает то какими затратами она достигается. Легко тестировать - это полная херня. Это всё работало давно, когда глобальное состояние в любом виде не было легитимным. Сейчас это не так. И любая функция зависит от глобального состояния. Т.е. нельзя протестировать отдельную функцию, потому как она объявлена в контексте другой функции и на явно захватывает состояние оттуда. К тому же, никаких чистых функций в принципе не существует.
@daedaliusX4 жыл бұрын
> Кешируемость никаким образом не зависит от чистоты. Но ведь кеширование в это виде элементарно реализовывать, не? > Мемоизация - убогий костыль для самой чистоты Смотрел на кеширование как на средство повышения производительности. То что под капотом юзаются хаки как раз может волновать только фанатиков. > Не учитывает то какими затратами достигается ссылочная прозрачность. Ой, всем пофиг пока оно не тормозит. Возьми тот же Redux который большинство использует просто по причине наличия React в проекте. ИЧСХ нормально работает даже на мобилках если совсем уже голову не отключать при написании кода (например триггерить Redux с валидацией на каждый onChange). > Легко тестировать - это полная херня. Приведи пример что тестируется легче чем чистая функция. > Нельзя протестировать отдельную функцию, потому как она объявлена в контексте другой функции и на явно захватывает состояние оттуда. Ты имеешь ввиду, что сложно доказать корректность работы программы (чем никто не занимается если речь не идет от отправке людей за пределы Этой Планеты). А вот тестировать как раз очень легко. Достаточно программу составлять из модулей, а не писать всё в одной простыне.
@rustonelove4 жыл бұрын
@@daedaliusX >Но ведь кеширование в это виде элементарно реализовывать, не? Не. Оно здесь и ненужно. >Смотрел на кеширование как на средство повышения производительности. ФП, чистота и прочий мусор не способны к производительности. Зачем делать говно, что-бы потом его исправлять? К тому же, никакого повышения производительности нет. Изучи букварь. Мутация сама по себе кеширование. Ты читаешь значение, которое обработчик мутирует. В фп обработчик не может мутировать и обязан вызываться на запрос значения. А далее путём костылей это пытаются вернуть. >То что под капотом юзаются хаки как раз может волновать только фанатиков. Нет, просто ты нихрена не понимаешь. >Ой, всем пофиг пока оно не тормозит. Ты бы так не позорился. Напомню контекст данному гению "у нас тормозит - мы добавили говнолибу, что-бы она не тормозила и которая решает проблему" и далее ответ "не решает - это обман". И тут мамкин гений в комментах мне отвечает "пока оно не тормозит". Ты осознаешь несколько нелепую херню несут боты типа тебя? >Возьми тот же Redux который большинство использует просто по причине наличия React в проекте. Нет, это говно используется потому, что пропаганда внушила адептам его использовать. Потому что в реакте существует фатальный недостаток. А говнукс прикрученный добавляет к нему сайд-эффекты. >ИЧСХ нормально работает даже на мобилках Нет, очевидно. >если совсем уже голову не отключать при написании кода (например триггерить Redux с валидацией на каждый onChange). И тут же оказывается, что всё что было выше сказано - ложь. Уровень. Твои познания крайне скудны. >Приведи пример что тестируется легче чем чистая функция. Тебя поимела пропаганда. Никакой чистой функции там нет. Почему вы, бездарные сектанты, все настолько тупая? Сектанту внушили какой-то лозунг и он повторяет, ведь он бот. >Ты имеешь ввиду, что сложно доказать корректность работы программы (чем никто не занимается если речь не идет от отправке людей за пределы Этой Планеты). А вот тестировать как раз очень легко. Достаточно программу составлять из модулей, а не писать всё в одной простыне. Ты опять опозорился. Вначале были функции, а теперь уже каике-то модули. Уровень шизофазии просто поражает. Тебе сообщают о том, что в рамках базовый методички захваченные переменные не нарушают чистоты. Давай попроще. У тебя есть функция (a, b) => f(a, b, c, d, f) - это самое простое. Как мне протестировать функцию f? Она же чистая. Ой, ты обделался. Потому как жертва пропаганды. Для того, что-бы протестировать функцию f - нужно его получить, для этого нужно сгенерировать аргументы для порождающей её функции, а так же обеспечить ей необходимой контекст(в котором существуют переменные c d f и с необходимыми данными). Поэтому для тестирования любой чистой функици нужно так же поднимать её окружение. Единственное, где не нужно - это для функции верхнего либо без аргументов(что не имеет смысла), либо с примитивными аргументами. Потому как любой аргумент - это такое же окружение, которое нужно поднимать.
@rustonelove4 жыл бұрын
4:25 - забыл про самое важное. Распалелливание. Это так мило, когда залётный жабаскрипт-пропагандист, который нихрена не знает, вбрасывает что-то аудитории, которая так же нихрена не знает. Кто не понял. Я уже давал части ответа. Дело в том, что уже давно чистота является не фактической, а семантической. А когда мы говорим о параллелизме - мы говорим о фактической чистоте. Т.е. сектант вас попросту обманул. Но самое интересное тут то, что несмотря на все завывания фп-сектантов - развитие параллелизма там находится в зачаточном состоянии. Сам параллелизм вообще не может быть выражен в рамках ФП. Если проще - сектанты орут о "просто расппаралеливать", но в реальности ни у кого из сектантов этой параллельности нет. Я даже больше скажу - почти все сектантские недоязычки многопоточность вообще не поддерживают. Тот же ml во всех его проявлениях. Да вообще ничего нет. Там до сих пор fork из 90х годов.