Reading up on Dependency injection in the Spring Framework. Class-binding is late-assigned in XML (mainly). Spring uses another (different) interpreted language, derived from JSP expressions.
Reading up on the Standard Template Library for C++. Class templates are written in this semi-interpreted template-script with tricky semantics, rather different from C++.
Right. This is doing badly a long-ago learned lesson. Lisp does all it’s meta-level stuff in … Lisp. A decades old insight. C++ has this newly-invented semi-interpreted declarative script for templates … that is tricky to interpret and not reusable. JSP and Spring share a very limited expression language, that is very much a niche, and not much worth reusing.
The Lisp community learned decades back the lesson of using the same language for meta-level stuff as for the regular level.