title: Imperative vs Declarative build systems
body: <p>I have recently started using Gradle as a build system.
  They first comparison that Gradle makes with the likes of Ant and Maven is that,
  Ant is an <strong><em>imperative</em></strong> build system, whereas Maven is a <strong><em>declarative</em></strong> build system.
  While Gradle is a <em>declarative</em> build system without the rigidity enforced by Maven.</p>
  
  <p>I wanted to understand these terms <em>declarative</em> and <em>imperative</em> better when it comes to talking about build systems.</p>