The biggest difference is that __gc metamethods will get called, allowing the app to cleanup resources (flush to disk, close files etc etc). There is no difference to dangling memory since the OS will clean all that up anyway when the process exits (it will close files too, but user-level buffers may not be flushed).
I wonder why you'd want the state to *not* be shut down, let alone for that to be the default?
Sent from my Game Boy.
I’m not going to speculate why it is or is not the default, but one reason for not doing a close is if you DONT have anything to clean up then it’s a LOT faster.