The problem is accepting&#x2F;returning a wide and disjoint type set, together with metaprograming itself.<p>Static typed languages tend to require that code deals with only a restrict set of types, and avoid metaprograming in exchange of other kinds of code abstraction.<p>I don&#x27;t think this specific problem is big, tough. The dependencies one, by its turn, is huge.