Что такое каррирование и декаррирование? Душкин объяснит

Sdílet
Vložit
  • čas přidán 26. 08. 2024
  • Функциональные типы в языке Haskell приводят к тому, что каждая функция представляет собой функцию от одного параметра. Впрочем, в любых языках с этой точки зрения любая функция является функцией от одной переменной. Узнаем же, что это за точка зрения.
    Курс по функциональному программированию на Udemy: www.udemy.com/...
    ТГ-канал Романа Душкина: t.me/drv_official
    #ФП #Программирование #Функция #ФункциональноеПрограммирование #Haskell #Хаскель #Хаскелл #Видеошпаргалка #РоманДушкин #ДушкинОбъяснит #Параметр #Передача #Каррирование

Komentáře • 20

  • @lorisyanis
    @lorisyanis Před rokem +1

    О, в rust тоже есть тюплз, там в принципе множество схожестей с хаскель, правда нет алгебраических типов

    • @lorisyanis
      @lorisyanis Před rokem +2

      по факту раст мульти-парадигмовый язык, и видно что создатели много перейняли с хаскеля

    • @dushkin_will_explain
      @dushkin_will_explain  Před rokem +1

      @@lorisyanis, Хаскелль, так-то, тоже мульти-парадигменный.

  • @lasthero67
    @lasthero67 Před 2 lety +1

    Не смог ничего придумать как сделать функцию dec. Вы в следующем ролике объясните?

    • @dushkin_will_explain
      @dushkin_will_explain  Před 2 lety +1

      А надо?
      dec = flip (-) 1

    • @lasthero67
      @lasthero67 Před 2 lety +1

      @@dushkin_will_explain флип, это походу встроеная функция хаскеля? Реверс аргументов делает?

    • @dushkin_will_explain
      @dushkin_will_explain  Před 2 lety +3

      @@lasthero67, она самая. Не встроенная, а импортируется из стандартного модуля Prelude, который всегда везде сам импортируется по умолчанию. Определена очень просто:
      flip :: (a -> b -> c) -> b -> a -> c
      flip f x y = f y x

  • @lasthero67
    @lasthero67 Před 2 lety +2

    недавно узнал, что youtube не считает комментариями текст менее 5 слов.
    а по теме, на телефоне очень плохо видно пришлось переходить на стационарный компьютер

    • @dushkin_will_explain
      @dushkin_will_explain  Před 2 lety +1

      Ого! Надо изучить вопрос, действительно ли это так.

    • @lasthero67
      @lasthero67 Před 2 lety +1

      @@dushkin_will_explain в тему дизайна. Сайт aia имя компании в левом верхнем углу на большом компе очень мелко, а на телефоне наоборот - хорошо

    • @dushkin_will_explain
      @dushkin_will_explain  Před 2 lety +1

      @@lasthero67, благодарю. Передам разработчикам.

  • @dushkin_will_explain
    @dushkin_will_explain  Před 2 lety +1

    Все видео по функциональному программированию в одном плейлисте: czcams.com/video/bPCBb1U56yw/video.html
    И вы всегда можете обратиться к нам за консультациями.

  • @Petr-kh1lt
    @Petr-kh1lt Před 3 měsíci

    Похоже понял. Каррирование это возврат не до конца заряженной функции аргументами)

  • @romanushakov8469
    @romanushakov8469 Před rokem +1

    dec = (+) (-1)

  • @lorisyanis
    @lorisyanis Před rokem +1

    а ну тут вообще изи
    module Dec where
    dec x = (-) x 1

    • @dushkin_will_explain
      @dushkin_will_explain  Před rokem

      А бесточечно?

    • @lorisyanis
      @lorisyanis Před rokem

      @@dushkin_will_explain а, ну так я ещё не знаю)

    • @alexanderskusnov5119
      @alexanderskusnov5119 Před rokem

      Если без выкрутасов, то dec x = x - 1
      Операторы для того и существуют, чтобы скобок не писать.