Every languages has their own pitfalls. The answer on picking a language is to pick whatever works for you. There may be even domain-specific languages if you're interested in a domain, and it can be way more flexible than general-purpose solutions for that domain too.
I use 4 languages.
- C++ for adding features to a program.
- C# for making .dll for an application (
Paint.NET). Kinda similar purpose to what I do with G'MIC, except so much more limited. - Python for processing strings
- G'MIC for creating/editing raster graphics images (volumetric too)
Now, I wish there was a vector equivalent to G'MIC, but there isn't.
I only do raster graphics image processing, so G'MIC it is. A entire coding language and it's a library in of by itself for that.
On non-DSL, don't have a fave. I'll choose one of these: Python, C++, C#.