Global state in programming languages
An incomplete list of things that can modify global state:
- The filesystem
- Network access
- Randomness
- Spawning processes
- Calling native functions (FFI)
- Command-line arguments
- Environment
- Current date and time
- Current geolocation
Arguably:
- Memory allocation