typeinfo is runtime type information, comparable to Java's reflection (but weaker in its capabilities). It also is pretty unsafe as documented. `getTypeImpl()` came much later in Nim's development and offers similar things but works completely at compile-time. It's the preferred solution, but compile-time introspection can be harder to write than runtime introspection.
In the longer run I would like to deprecate runtime type information.
