Image for post
Image for post

Well, programming languages are super awesome. Yes, there are lots of them and many alternatives to do the same task. But usually, there are only a few that stands up.

Most of the prominent programming languages are we used to use are imperative. For example Java, C++, and C#. In the imperative paradigm, we define step by step instructions to get what we what to. This approach is known to have issues such as immutable state, boilerplate code and difficulty to work with concurrency.

Recently, the functional programming style is gaining traction and becoming a trend which has advantages such as not needing to worry about keeping the state, support for immutable variables and higher-order functions. Though the functional approach has many amazing features, it’s also not good and fancy all the time. In functional programming, we describe what we need rather than how to do. And when we do this using functions we declare them in the reverse order (first operation at last) which is not natural. …


Udesh Kumarasinghe

Microsoft Student Partner. Founder at Anagram Software. Undergraduate at UCSC. Interested in mobile and web app development, reactive programming. Loves coffee.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store