I started drafting a change to support W^X, which would let MIT Scheme run natively on Apple Silicon, as well as avoid hacks like paxctl to disable W^X protections on modern x86 systems.
The quick summary of the approach is to move compiled code blocks, once constructed, into separately mmapped regions with PROT_EXEC but not PROT_WRITE permission; the garbage collector manages these regions with a simple mark & sweep process interleaved in the stop & copy approach used for the main heap. I haven't finished it, but if anyone's interested in taking it up, I sketched some details of the approach in the commit message on the WIP change I just pushed to the new wx branch here: https://git.savannah.gnu.org/cgit/mit-scheme.git/commit/?h=wx&id=0a6ca0e12df7f722783e1d1a4235af8bad5b8166