How to construct complex data declaratively and progressively? | Not Hacker News!