I would recommend that you definitely look into Scala.
The language that was fundamentally designed to be "scalable" with and/for frameworks. Check this resource for more information.
- https://speakerdeck.com/itakeshi/metaprogramming-in-scala-th...
- https://geirsson.com/post/2016/02/scalameta/