I. Introduction
As with the many things in programming languages history, there is an always present debate about which programming paradigm is better and when a specific paradigm should be used [1]–[2]. Even the classification of paradigms itself is often cause for a debate. However, programming paradigms are often classified in six fundamental paradigms: imperative, declarative, object-oriented, functional, symbolic, and logic programming paradigms. Declarative and symbolic paradigms are sometimes left out leaving only four fundamental paradigms [3].