Skip to content
HomeVideos
AllLongsCategoriesPlaylists
BooksBlogsPodcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K

    "Outperforming Imperative with Pure Functional Languages" by Richard Feldman

    Strange Loop Conference

    6 HN recommenders · recommended in 6 months, 2021–2025

    YouTube

    34:55 · 98K views · Oct 20, 2021

    Richard Feldman explains how pure functional languages can match or beat imperative ones on performance. Compilers can turn immutable code into in-place mutation, avoiding naive copying. The talk draws on his work on the Roc language.

    Recommended as the clearest explanation of why immutable data need not be slow, and as the introduction to Roc.

    Software Engineering & LanguagesFunctional programmingSoftware performance & optimizationCompilers, interpreters & program analysis
    1. 46:09
      Why Isn't Functional Programming the Norm? – Richard FeldmanMetosin1.6M views • 7 years ago
    2. 1:12:56
      Lecture 1A: Overview and Introduction to LispMIT OpenCourseWare421K views • 7 years ago
    3. 1:07:10
      Brian Beckman: Don't fear the Monadjasonofthel33t415K views • 13 years ago
    4. 44:43
      Ron Pressler - Pull Push: Please stop polluting our imperative languages with pure concepts-Curry OnCurry On!25K views • 11 years ago
    5. 1:14:52
      Effective Programs - 10 Years of Clojure - Rich HickeyClojureTV176K views • 9 years ago
    6. 1:01:39
      "Simple Made Easy" - Rich Hickey (2011)Strange Loop Conference220K views • 5 years ago
    7. 40:00
      "Agility & Robustness: Clojure spec" by Stuart HallowayStrange Loop Conference25K views • 10 years ago
    8. 36:31
      Hey Underscore, You're Doing It Wrong!InfoQ141K views • 13 years ago
    9. 42:15
      "Performance Matters" by Emery BergerStrange Loop Conference502K views • 7 years ago
    10. 43:04
      "Stop Writing Dead Programs" by Jack Rusher (Strange Loop 2022)Strange Loop Conference468K views • 4 years ago
    11. 43:31
      Analyzing Programs with Z3Compose Conference24K views • 10 years ago
    12. 1:12:56
      Lecture 1A | MIT 6.001 Structure and Interpretation, 1986MIT OpenCourseWare995K views • 17 years ago
    13. 1:02:26
      Solving Problems the Clojure Way - Rafal DittwaldClojure/north87K views • 7 years ago
    14. 45:50
      "The Mess We're In" by Joe ArmstrongStrange Loop Conference398K views • 12 years ago
    15. 41:06
      "Unison: a new distributed programming language" by Paul ChiusanoStrange Loop Conference45K views • 7 years ago
    16. 45:55
      Ruby Conf 12 - Boundaries by Gary BernhardtConfreaks58K views • 13 years ago
    17. 40:55
      "Controlling Time and Space: understanding the many formulations of FRP" by Evan CzaplickiStrange Loop Conference69K views • 12 years ago
    18. 1:19:57
      Simon Peyton Jones: Data Parallel HaskellnuACM28K views • 16 years ago
    19. 51:40
      Domain Modeling Made Functional - Scott WlaschinNDC Conferences71K views • 9 years ago
    20. 32:44
      Clojure in a nutshell by James TrunkFunc Prog Sweden104K views • 5 years ago

    8 comments from Hacker News

    1. @yashrkNov 2023· in “Roc – A fast, friendly, functional language”

      If you are interested, «why yet another programming language?». The unique selling point of Roc is clever optimization to convert purely functional source code to deep-imperative fast machine code, while keeping all the correctness of functional algorithms. See this video of Richard Feldman for details — «Outperforming Imperative with Pure Functional Languages»: this video Among those clever optimizations: - static reference counting (no GC, like in Rust, but with no borrowing and borrow problems); - stack allocation of the data with no external links; - hidden («opportunistic») mutability even in the cases, where Haskell or Lisp will copy the value.

      RecommendsView on HN
    2. @AkronymusJun 2022· in “Ask HN: Functional vs. Imperative Implementation of Algorithms”

      > Functional programming experts say that their code is efficient because the compiler translates it to an efficient representation on the CPU. They have TCO and other things. But they don't mutate data and hence every function call creates a new data in memory taking up space. How do they overcome that? By letting the compiler make assumptions. For example, consecutive map calls can be converted into a single one. If the data isn't shared with something else, the compiler can mutate it. MUCH easier to paralellize maps. As a starting point for those nitty grittys, this talk is probably as good as any this video

      RecommendsView on HN
    3. @greener_grassOct 2024· in “Serialization Is the Secret”

      1. Structural sharing - most data doesn't change so you create a copy that reuses much of the original structure 2. Garbage collection and lexical scopes - you clean up memory quickly and in batch 3. Compiler optimizations - you turn functional constructs into imperative ones that reuse and mutate memory at compile-time, where it is provably safe to do so Roc Lang might interest you: this video

      RecommendsView on HN
    4. @memcoNov 2021· in “4x Smaller, 50x Faster”

      > How would one optimize for immutability in this case, other than turning it back into mutability behind the scenes? Roc-lang, which is a functional, systems language in development uses something called opportunistic in-place mutation to do just that. Here's a video where the creator talks about it: this video

      RecommendsView on HN
    5. @greener_grassFeb 2025· in “Roc rewrites the compiler in Zig”

      We already have many great GC'd functional languages at that performance level. I first learned about Roc from this talk: this video That's a niche that is not currently filled (well, maybe MLTon) and that has me very excited! I'm sure I'm not alone here.

      RecommendsView on HN