title: What programming paradigm/metamodel characterizes D3.js?
body: <p>While D3 is marketed as a "web graphics library", that doesn't really reveal what programming paradigm/metamodel it is based on. What is that paradigm? Is it simply a dataflow programming library for javascript (which is imperative in nature)?</p>
  
  <p>I understand "how" its statements are structured: fluent method chaining which takes data in, and transforms it into some other textual format (namely a Document Object Model). </p>
  
  <p>This sounds a lot like dataflow programming / functional programming / UNIX pipes and filters. Is this the closest conceptual programming metamodel to describe D3.js?</p>