// the find
tenderlove/asmrepl
A REPL for x86-64 assembly language
A REPL for x86-64 assembly that lets you type instructions one at a time and immediately see which registers changed. Built by Aaron Patterson (tenderlove), a Ruby core committer, so the implementation quality is serious. Best use case is learning how individual instructions affect CPU state without the write-assemble-link-debug cycle.
Register diff output after each instruction is the killer feature — you see exactly what changed, not the entire register file every time. The platform abstraction (linux.rb / macos.rb) handles ptrace vs mach_vm differences cleanly. Using a real Racc-generated parser (parser.y) rather than string splitting means it handles AT&T vs Intel syntax edge cases properly. It's a gem, so install is one line.
Linux requires root or adjusted ptrace permissions, and macOS requires sudo — that's a real friction point for casual use and breaks in any sandboxed environment. No SIMD or AVX instruction support mentioned, so anyone learning modern vectorized code hits a wall fast. The repo is essentially feature-complete but unmaintained — last meaningful commit was years before the 2025 push, and open issues go unanswered. No way to define multi-instruction sequences or labels, so anything beyond single-instruction experimentation requires mental state tracking.