Hacker News

Top stories

Live mirror
30 storiesupdated just nowView source snapshot
  1. Bend 2 and the Vibe-Coding Trap(liampwll.com ↗)
    53comments
  2. OpenJev(openjev.com ↗)
    135comments
  3. ZCode, the GLM coding agent, silently uploads your Git history(tokenstead.ai ↗)
    29comments
  4. Jemalloc 5.4.0(github.com/jemalloc ↗)
    56comments
  5. Subnormal floating-point numbers are expensive on Intel processors(lemire.me ↗)
    5comments
  6. The scourge of x86 emulation(fex-emu.com ↗)
    43comments
  7. I don't like passkeys(hawksley.dev ↗)
    69comments
  8. Cekura (YC F24) Is Hiring(ycombinator.com ↗)
    discuss
  9. Bonsai 2 27B: Near-Lossless Compression in a 9x Smaller Footprint(prismml.com ↗)
    151comments
  10. Astra for Law(openai.com ↗)
    619comments
  11. The Shadows Lurking in the Equations – Underwater Islands(gods.art ↗)
    discuss
  12. Warren Buffett Steps Down as Berkshire Chairman, Names Son to Replace Him(nytimes.com ↗)
    43comments
  13. Microsoft exec called AI scraping 'the largest theft of labor in human history'(techcrunch.com ↗)
    303comments
  14. Replacing Pull Requests with Delta(zed.dev ↗)
    26comments
  15. Bend – A language that blocks AI mistakes via proof, on CPU and GPU(bend-lang.com ↗)
    246comments
  16. Qwen 3.8 Omni Flash(qwen.ai ↗)
    96comments
  17. Hister: A private search engine for the pages you visit and the files you keep(github.com/asciimoo ↗)
    173comments
  18. Wax motor(wikipedia.org ↗)
    78comments
  19. When the fractional part of a float fixes your shader(crocidb.com ↗)
    10comments
  20. Fujitsu launches made-in-Japan next-generation CPU FUJITSU-MONAKA(global.fujitsu ↗)
    238comments
  21. Pre-Greek: The lost language hidden within Ancient Greek(linguisticdiscovery.com ↗)
    51comments
  22. How to Write with an LLM(sockpuppet.org ↗)
    142comments
  23. Dr Julius Neubronner's Miniature Pigeon Camera(publicdomainreview.org ↗)
    discuss
  24. A heap overflow and SSO misconfiguration to compromise OpenAI internal repos(hacktron.ai ↗)
    164comments
  25. Shapelearn Qwen 3.8 27B (13.1 GB VRAM)(byteshape.com ↗)
    18comments
  26. Ask A Monk – A digital wilderness for thoughts with no immediate answer(askamonk.online ↗)
    27comments
  27. Flet 1.0 – Build cross-platform apps in Python(flet.dev ↗)
    70comments
  28. Telstra outage: The night a network decided the year was 2006(netnod.se ↗)
    29comments
  29. Diplodocus, Long Thought Exclusively American, Turns Up in Spain(sci.news ↗)
    47comments
  30. Speeding up gearhash on ARM64(sam.dev ↗)
    discuss

Rr 5.0 Released

44 pointsby 9y agorobert.ocallahan.org
3 comments
9y agoHN ↗

I checked the GitHub to work out what rr is:

rr is a lightweight tool for recording and replaying execution of applications (trees of processes and threads). More information about the project, including instructions on how to install, run, and build rr, is at http://rr-project.org.

9y agoHN ↗

rr is my goto debugger. It opens up new super-powers for debugging scripts. Consider this gdb script:

  b broken_1_in_1000_times_at_random.cpp:1
  c
  b usually_runs_normally.cpp:1
  reverse-continue

And now step through forward to figure out what went wrong. This tool is worth your time to learn. There are a couple of minor annoyances (you can't re-use existing gdb scripts that contain the "run" command because the inferior is already running, but there are workarounds. Here's what I use:

  python
  import gdb
  class MyRunOrContinue (gdb.Command):
      """Run inferior if not already running, otherwise continue (useful for rr)."""

      def __init__ (self):
          super (MyRunOrContinue, self).__init__ ("just-go", gdb.COMMAND_USER)

      def invoke (self, arg, from_tty):
          if gdb.selected_inferior().pid != 0:
              gdb.execute('continue')
          else:
              gdb.execute('run')

  MyRunOrContinue()
  end

There are a few other minor annoyances, but all in all a great tool.