Implementing Execute-Only Memory in userland: https://www.tedunangst.com/flak/post/userland-xnr-jit (an elegant way of hardening JITs to ROP exploits!)
miniblog.
Related Posts
I'm implementing an interpreter, and wondering how often I should check for interruptions (e.g. Ctrl-C).
I don't want to spend too much CPU time checking whether I've been interrupted, but I also want slow programs to stop promptly. It's tricky.
The Bitter Lesson: how implementing generic search and scaling compute outperforms custom logic in many situations:
Implementing type checking as another interpreter, with short, accessible examples: