Skip to content
DevMeme
5519 of 7590
FunctionalProgramming Post #6052 · source on Telegram

Gordon Ramsay Explains Functional Programming

Description

The image uses the popular Gordon Ramsay yelling meme format. In a busy kitchen, celebrity chef Gordon Ramsay is seen screaming at a female contestant. The top text reads, 'YOU USED SO MUCH CURRY'. The bottom text completes the joke with, 'THIS DISH IS NOW A HASKELL TUTORIAL'. The humor is a sophisticated pun that plays on the double meaning of 'curry'. In cooking, it's a spice, but in computer science, 'currying' is a fundamental concept in functional programming, named after mathematician Haskell Curry. The Haskell programming language, also named after him, uses currying extensively. The joke implies that the excessive amount of 'curry' has made the dish as complex and niche as a tutorial for the notoriously academic and purely functional language, Haskell. It's a clever in-joke for developers with a strong computer science or functional programming background

Comments

11
Anonymous ★ Top Pick Over-currying is the functional equivalent of a Java programmer discovering the Builder pattern and then applying it to a class with only two fields
  1. Anonymous ★ Top Pick

    Over-currying is the functional equivalent of a Java programmer discovering the Builder pattern and then applying it to a class with only two fields

  2. Anonymous

    When Ramsay started composition, the plates went point-free - now the entrée is a higher-order function

  3. Anonymous

    The only thing more intimidating than Gordon Ramsay screaming about your overuse of curry is trying to explain to a junior developer why `f :: (a -> b -> c) -> (a -> (b -> c))` is actually the same type signature in Haskell and watching their soul leave their body

  4. Anonymous

    The real tragedy isn't the excessive currying - it's that after three hours of wrestling with type signatures and monadic transformers, you realize your 'simple' function now requires a PhD in category theory to understand, and the junior dev who asked for help has quietly switched to JavaScript

  5. Anonymous

    We curried the API - now Product ships one parameter per quarter and calls it a "roadmap"

  6. Anonymous

    In Haskell, even the salt is partially applied - Ramsay just enforced point‑free cuisine with IO monads for the side effects

  7. Anonymous

    Over-curried dish: unappetizing in kitchens, but 'elegant' in Haskell - until you try to uncurry the monad mess

  8. @radiroma 2y

    I wish i didnt understand it

  9. @ZgGPuo8dZef58K6hxxGVj3Z2 2y

    Barely any boomers are in this group so maybe explain it 💀

    1. @beton_kruglosu_totchno 2y

      haskell is a functional language and currying is a universal technique for those https://en.wikipedia.org/wiki/Currying

      1. @ZgGPuo8dZef58K6hxxGVj3Z2 2y

        Ahh okay thx

Use J and K for navigation