> Erased generics the type information is not available at run time. That's the way Java does it and it kinda sucks.
In a good statically-typed language you don't need runtime type information. It could be a Void in the bytecode for all I care, as long as it behaves correctly.
> obj.GetType() == typeof(typename)
In a statically-typed language, this can be optimised away to a bool at compile time.
Occasionally it is really useful to be able to do something like `new T()`. Without reified generics that is not possible.
Oh absolutely not true AT ALL.