Variables and fields in generics

So this is about dependent types.

See: Variable dependent types?