Skip to content
HomeVideosBooksBlogs
AllTop postsTopics
Podcasts
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
    B

    Brown PLT Blog

    blog.brownplt.org · Company blog · on HN since 2013

    Brown University's programming languages research group writes about teaching, language design, formal methods, testing and program semantics.

    Visit blogHN submissions
    Languages & CompilersProgrammingScience
    What HN says

    Commenters cite it for Rust resources, mystery languages, and its view of language size via core languages and desugaring, and as a source on Forge.

    Stats for nerds
    33HN people shared it
    52linked in comments
    534story points
    Dec 2025last shared
    2013people per year2025

    Top posts on HN

    1. 1
      Teaching the Essentials of Garbage Collection
      3 people · 94 points · first shared 2013 · 10 comments on HN
    2. 2
      Finding and fixing standard misconceptions about program behavior
      2 people · 78 points · first shared 2024 · 21 comments on HN
    3. 3
      Mystery Languages
      3 people · 68 points · first shared 2018 · 23 comments on HN
    4. 4
      Types for Tables: A Language Design Benchmark
      1 person · 66 points · first shared 2021 · 13 comments on HN
    5. 5
      Teaching and Assessing Property-Based Testing
      2 people · 44 points · first shared 2021 · 3 comments on HN
    6. 6
      The Hidden Perils of Automated Assessment
      1 person · 29 points · first shared 2018 · 15 comments on HN
    7. 7
      Forge: A Tool to Teach Formal Methods
      3 people · 28 points · first shared 2024 · 1 comments on HN
    8. 8
      Lightweight Diagramming for Lightweight Formal Methods
      1 person · 24 points · first shared 2025 · Discussion on HN
    9. 9
      Gradual Soundness: Lessons from static Python
      2 people · 17 points · first shared 2022 · 1 comments on HN
    10. 10
      Plan Composition Using Higher-Order Functions
      1 person · 14 points · first shared 2022 · 6 comments on HN

    What HN people wrote when they linked it

    • emmanueloga_Nov 2024

      The problem is that there's no universal definition of "small" when it comes to languages.

      An article on the Brown PLT blog [1] suggests analyzing languages by defining a core language and a desugaring function. A small core simplifies reasoning and analysis but can lead to verbose desugaring if features expand into many constructs. The boundary between the core and sugared language is flexible, chosen by designers, and reflects a balance between expressiveness and surface simplicity.

      Feature complexity can be evaluated by desugaring: concise mappings to the core suggest simplicity, while verbose or intricate desugarings indicate complexity.

      So, a possible definition of a "small" language could be one with both a small core and a minimal desugaring function.

      --

      1: https://blog.brownplt.org/2016/01/08/slimming-languages.html

    • hackermailmanDec 2025

      Brown PLT group has a lot of Rust resources like a debugger for traits https://cel.cs.brown.edu/blog/an-interactive-debugger-for-rust-trait-errors/ a model of ownership types https://blog.brownplt.org/2023/09/17/rust-ownership.html and an experimental rewrite of the Rust book https://rust-book.cs.brown.edu/

      Systems programming can be done in ocaml or any language really where there is some documentation on the runtime how not to trigger the GC or flags that can be passed to custom set GC policy

    • mdanielApr 2024

      Yesterday's submission may interest you: https://blog.brownplt.org/2024/04/21/forge.html (Forge: A Tool to Teach Formal Methods)

    • brudgersMay 2013

      This article showed up on HN not too long ago:
      http://blog.brownplt.org/2013/02/19/teaching-gc.html

      Maybe it will help.

    • jeapostropheAug 2013

      I suggest reading about progressive types:

      http://blog.brownplt.org/2012/09/01/progressive-types.html

    • jpolitzDec 2016

      Perhaps `unfun` can be incorporated into this:

      http://blog.brownplt.org/2014/04/01/var-vs-yar.html

    Related

    Shriram Krishnamurthics.brown.edu/~sk129 people

    Programming Paradigms and Beyond [pdf]

    Shriram Krishnamurthi
    Personal · last shared 2025
    Xah Leeergoemacs.org73 people

    Using Voice to Code Faster than Keyboard

    Xah Lee
    Personal · last shared 2021
    foonathanfoonathan.net35 people

    Carbon’s most exciting feature is its calling convention

    foonathan
    Personal · last shared 2026
    Existential Typeexistentialtype.wordpress.com157 people

    Haskell Is Exceptionally Unsafe (2012)

    Existential Type
    Personal · last shared 2026
    Bryan O'Sullivanserpentine.com49 people

    Github is making me feel stupid(er)

    Bryan O'Sullivan
    Personal · last shared 2021
    Lambda the Ultimatelambda-the-ultimate.org615 people

    Simon Peyton Jones Elected into the Royal Society Fellowship

    Lambda the Ultimate
    Publication · last shared 2026
    Better Programmingbetterprogramming.pub319 people

    Three programmers got fired, including me, due to a single app crash

    Better Programming
    Publication · last shared 2025
    Hillel Waynehillelwayne.com294 people

    1/0 = 0

    Hillel Wayne
    Personal · last shared 2026