Using and working with abstraction to do interesting things with the Julia language
introduction
One of the things I find fascinating about exploring different programming languages is how different paradigms solve different types of problems. In programming, there are a number of features that one can expect from a modern programming language. Some examples of these features include things like scope, polymorphism, and abstraction. Certain paradigms will have greater applications in certain fields, and data science is no exception. These features are all implemented across the spectrum of programming paradigms using a multitude of different approaches. This topic becomes even more interesting to me every time a language with an atypical paradigm implements this type of generic programming concepts. This brings us to the Julia programming language.
The Julia programming language is one of the most exciting developments to appear in the world of programming in recent years. The programming world is accustomed to a few select paradigms that have been perfected over decades to create some very formidable ideological approaches to solving programming problems. Although Julia uses many more generic programming concepts to accomplish her work, the language paradigm itself is incredibly unique and often results in a different way of doing things. This has been called the multiple-distribution programming paradigm. This paradigm is a very effective programming paradigm when it comes to doing exactly what Data Scientists do.
With this type of programming paradigm relationship, Julia shifts gears a bit to accomplish many more generic programming concepts that most programmers will want to use. There are a multitude of abilities in which this plays out all over Julia. All of these concepts carry over to the robust capabilities of the multiple distribution paradigm. For experienced programmers, I find this can be an incredibly powerful paradigm! That being said, regardless of the paradigm, it is important to know what tools are available to take advantage of it. An example of a technique that fits very well into the Julian paradigm is the Julian implementation of…