It is technically a Haskell DSL, but supports Ninja files, time estimates and has tools for linting and profiling.