To me good enough practically means almost perfect, because it's just matter of time you go broke with an imperfect architecture.
To me the relevant keywords for the futures programming environment and architecture: FRP, Cycle.js, Idris.
To me the relevant keywords for the futures programming environment and architecture: FRP, Cycle.js, Idris.
Every good solution will be some kind of compromise, keeping it simple is more important than picking "perfect" tools.