Is it just me? But every time I use a paradigm of global immutable state, almost always I run into edge cases where practically it falls apart either semantically (mental model explosion) or creates performance issues, whether they stem from architectural problems with the framework itself, or just the way computers operate.

its a trade off for sure

but my experience working with elm is that things just work almost always the first time

if they can bring that over, many will take that trade off

yes somethings are harder to express, but its subjective if its a bad thing given the correctness guarantees

i haven't firmly run into the perf ceiling myself, but yes it is obviously there for more interactive apps

My perf ceiling in Elm has been in two places:

- Elm CSS and even then, it was on a page with I think hundreds of accordions. We had to use Css.Global to create class based states, then toggle classes.

- Loading a massive library of data and leaving it in the state to make navigation within that library's pages faster. It was a classic tradeoff of upfront vs incremental load time, and we'd just over indexed in one direction.