I am trying to understand the difference between mkSimple and mkProgram in Fable-Elmish, or Elmish.WPF which I am actually using. (Can someone perhaps produce a tag for elmish.wpf please?)
I have found Elmish.WPF to be incredibly effective, I use it in production, but I'm at a stage where I'm still learning a lot every day. This particular question is gobbling up too much of my research time, so I would appreciate some help.
The comments in the source looks like this.
mkSimple : Simple program that produces only new state with 'init' and 'update'.
mkProgram : Typical program, new commands are produced by 'init' and 'update' along with the new state.
So what are those commands good for? I have looked at examples in several places, but they don't give much of a clue whether I can do the same with mkSimple as with mkProgram, and that's what I need to know.
Does mkProgram expose some functionality that mkSimple does not, or can everything be done whichever one I use? Is mkSimple only for simple demo use, and should I be using mkProgram for real world applications that grow? If you can do everything with both, then why the difference?