I think these are one of these cases where it is hard to articulate why one thinks in a particular way about a choice.

Domain specific languages certainly have their place, although I tend to prefer general purpose languages that allow you to define domain specific languages. The mental overhead seems smaller to me.

In fact one of the reasons I like Julia is because it is a great general purpose programming language but also quite good and defining DSLs. I have used it for this purpose on many ocassions.

There are quite a lot of different domains where you find DSL, such as in bioinformatics, statistics etc. What has impressed me about Julia when putting it up against these specialized langauges is that if often has just as clean or cleaner syntax while having better performance.

I like the whole LISP idea of having a mallable language which you can tailor to many different domains.

When it comes to machine learning, my intuition tells me that you acutally want a general purpose language and not a domain specific one. I have seen examples of people doing automatic differentiation on something as complex as raytracing in Julia. I cannot imagine programming something on that complexity level with a domain specific language.

Of course that may simply be because I lack imagination 😁

--

Geek dad, living in Oslo, Norway with passion for UX, Julia programming, science, teaching, reading and writing.

Love podcasts or audiobooks? Learn on the go with our new app.

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
Erik Engheim

Erik Engheim

Geek dad, living in Oslo, Norway with passion for UX, Julia programming, science, teaching, reading and writing.