"It's worth mentioning the function representation change, since it means closures no longer require runtime code generation (which among other things allows the heap to be marked non-executable on supported systems)."
TL;DR: functions are now represented as (function pointer, pointer to a context structure), whereas before they were represented as a single function pointer.
"It's worth mentioning the function representation change, since it means closures no longer require runtime code generation (which among other things allows the heap to be marked non-executable on supported systems)."
Anyone know what that means?