Compiling the Trap

This is a follow-up to Shifting the Trap and to Jacob K's Writing custom programs for yt-dlp's jsinterp . In Shifting the Trap, I argued that yt_dlp/jsinterp.py is, despite the hedging, a real interpreter for a subset of JavaScript - and that an interpreter faithfully executing a non-free, Google-authored program (base.js) is The JavaScript Trap , merely relocated from the browser to the terminal.…