| I spent a while trying to approach this post with an open mind. In the end I was disappointed. rel/to title: yes. (just say scroll position. fine.) But also I think this is pretty well understood! (No?) - In declarative UI / FRP / whatever, you model your basic UI state through a pure mapping from your business logic 'model'. - But (as in procedural programming) the UI has its own state — that's not necessarily part of your initial business/domain/model. If you want to model it, you'll have to understand it, read it, and add it to you model. That can be annoying—especially if the APIs for getting or setting the state are bad. This doesn't really sound like a fundamental flaw conceptually to me. It's just an API with defaults you don't have to deal with unless you need to. - don't care what your color is? fine. system default for you. - don't care what tab a link opens in? fine. user default. - don't care how scroll position is managed? fine. system default. - want to handle any of them? cool. you can. It sounds like progressive disclosure of API complexity to me. Great. |