&gt; Elm&#x27;s HTML engine conceptually the same as React+Redux and Om Now. It&#x27;s just a big single atom app state with ways to describe how to update it. It has all the same problems as Om Now (maybe not quite as bad because it doesn&#x27;t have cursors, but it doesn&#x27;t solve the data-as-a-graph problem).<p>That&#x27;s really not true. The nature of the Elm architecture means it already does this:<p>&gt; Instead, Om Next asks you to define a set of mutation operations which can change your application’s state.<p>except it calls that &quot;the `update` function&quot;.<p>The graph problem also seems slightly different, although it is way less convenient than Om Next as it is less declarative and must be bubbled through intermediate &quot;components&quot;, Elm &quot;render state&quot; (and render hierarchy) doesn&#x27;t have to match the application state, it&#x27;s perfectly possible (and very useful) to duplicate, denormalise and process application state during rendering to match your rendering hierarchy (although it is a very bad idea to denormalise the application state itself).<p>Elm&#x27;s trouble is mostly the &quot;remote mismatch&quot;.