Imperative vs. Declarative Programming
medium.com