> state is the stuff that changes. In the Elm architecture, State has to be represented in code, in a very specific way, for it to be available in your application to your users.<p>I don't understand this. There's a lot of things that is "available in the application to your users" that is outside of the control of Elm - for example, the text selection, scroll position, window position and resolution...<p>> With Elm, there’s no place to "hide" state in your application that aren’t threaded through the type checker<p>State isn't so much hidden as collaborative. Multiple components participate and have a need to store independent UI state. For example, a table component might want to control scrolling, filtering, and selection state, while delegating populating the row data to the app.<p>Is it possible in Elm to allow separate software components to maintain their own independent states, without requiring some god-component to have global knowledge?