Alternatively, functional programming deals with how inputs are transformed into outputs. Functional programming is pure meaning the output only depends on the input of the function. Therefore, functional programming does not have side effects. Also, functional programming does not have a “state” like imperative programming. For flow control, functional programming uses function calls and recursion.
The original inspiration for this blog post was to answer a question I had originally come up with. I wish I had a post like this when I first started to learn Functional Programming. Especially since I started to learn Functional Programming from the perspective of Imperative Programming.
Feel free to re-read this article as many times as you like. I re-read my resources repetitively to get clear about the differences between the two styles of programming.