_Variant have problems, for example, many functions need just the single variant, but you had to pass the all variants, and end up with lots of unneded check like ``variant.kind == 'a'`` etc. And some other type safety and other problems_.
I do believe that my example: _the one that sparked this whole thing_ ; demonstrates - if nothing else - that you can use Nim concepts to render object variants type safe...