It's static only relative to the output. You can readily write dependencies between your source (mdown, partials, whatever) files, just like your binaries/libraries depend on .o files, which themselves depend on .c and .h.
I fail to see how changing a typo in an article's content would require the whole thing to be rebuilt. Even adding a page would not require rebuilding every single page unless the new page appeared in a global navigation. Building the dependency graph automatically could even turn out to be not that hard.