Epic's new language, Verse, is also well poised for the "immutable" future of AI agent coding. Verse uses an effects system, and the <transacts> effect is required for any function to change a mutable variable. These changes are transactional, so if you have a failure in your <transacts> function, any changes it made are rolled back at exit. Code still looks imperative-ish, but it's both safe and pure.
(Or, it works something like this. The documentation is hard to understand; I'm working mostly on memory from their keynote)
Verse is totally proprietary and is still tied to the engine. Trust me that it sucks