‹ BackHN Continuity

Thread

Bend 2 and the Vibe-Coding Trap

327 points · 235 comments · LiamPowell

  1. GodelNumbering · · focus · HN ↗
    The code itself is the most compact representation of the rules you want applied.
    1. Smaug123 · · focus · HN ↗
      This is probably not necessarily true. “f: list[1 A] -> list[A] pure, worst-case time n log n, such that for all x and 0 <= i <= j < len(x), f(x)[i] <= f(x)[j]” is probably good enough for nearly everyone unless the program synthesiser is actively adversarial; probably 99.999% of the list-sorting in the world is done via standard library functions anyway, which suggests that people don’t much care exactly how it happens.
      1. someplaceguy · · focus · HN ↗
        > “f: list[1 A] -> list[A] pure, worst-case time n log n, such that for all x and 0 <= i <= j < len(x), f(x)[i] <= f(x)[j]” is probably good enough for nearly everyone

        Not good enough: `f(x) = []` or `f(x) = (if len(x) == 0 then [] else [x[0], x[0]]` are implementations that fulfill your specification and yet they don't always sort the input list correctly...

Open on Hacker News to reply ↗

Unofficial Hacker News client; not affiliated with Y Combinator.