4 ms·
> d3 is literally not a programming language In what ways is it, though? For instance, D3 offers looping constructs and facilities for control flow, so I'd c
by couchand 3y ago
> d3 is literally not a programming language
In what ways is it, though? For instance, D3 offers looping constructs and facilities for control flow, so I'd conjecture it's Turing-complete.
> It's written in js
It's a slim minority of programming environments that are self-hosted. Most are in fact implemented in another language.
> used in js
This is a technique called "deep embedding" in the DSL literature.
> provides a large toolbox of useful functions
To put it simply, that's not the point of D3 at all. D3 provides a mental model for data applications that enables a developer to raise the level of abstraction. This is a new way of thinking about data flow in visual applications. Oh, and it also has some helpful maths included.
> One builds on top of it, and IME it is _rarely_ directly used.
I take issue with this comment from several angles. Facially it's untrue, there's clearly lots of examples of D3 development. And the implication that something is defined by the output of some of its users rather than the tools it offers them all seems a bit strange.
The difference between your "generalized graphing libs" and D3 is orders of magnitude larger than the difference between those libraries and one that only offers a single chart type.