Re:Hot-code reloading on macOS/arm64 with Zig
by kubkon on Thursday March 17, 2022 @07:38PM
(#30717057)
Wait, but what about debuggers then? Plus hot-code reloading should only ever be used for quick development cycles when prototyping your app in debug mode, so very much what a debugger is used for, right? Additionally, I actually based the implementation of this PoC on lldb's debugserver for macOS.
Re:Hot-code reloading on macOS/arm64 with Zig
by pmalynin on Thursday March 17, 2022 @07:50PM
(#30717140)
Yeah this entitlement says your application is still “in-development” and allows a debugger to modify its executable memory.
Re:Hot-code reloading on macOS/arm64 with Zig
by kubkon on Friday March 18, 2022 @07:14AM
(#30720700)
Exactly, and the way I see it, this is the only valid use case for hot-code reloading in the first place: app in-development. I'll try augmenting my linker to be able to bake in the entitlements into the Zig compiler and this hopefully will remove the requirement for elevating privs via "sudo". Thanks for your comments though - it's been very enlightening :-)
> Plus hot-code reloading should only ever be used for quick development cycles when prototyping your app in debug mode
What about evolutionary/genetic programming? That can definitely take advantage of this as well.
The debugger entitlement is even more powerful, but once again since you’re modifying your own memory you don’t need it.