I watched the social half of nimconf, and it was great! (I'm gonna watch the other half later) Nerve's talk was interesting and made me think about global variables more. There's a particular issue with async (or maybe even multi-threaded) programming where you might want to mutate a global variable. Let's say you're hosting a web server and use an async proc to respond to requests. But one of the requests asks to shut down the server. You could mutate a global variable and have a while loop terminate. It doesn't work though, it says it's not memory-safe to do that. I think I've used Araq's malebolgia ticketlocks to work around something like that before, but perhaps something like that could be solved at the architectual level instead, in a memory-safe way? (or if some kind of lock is needed, it would be helpful to understand how they work, since they seem like magic lol)