Shammah Chancellor:
It's more a fundamental problem with a complex type in general.C++ has this issue as well. You need a purely imaginary type with the appropiate operations between Complex and Imaginary defined.
Can't you add a new name to std.complex to implement the purely imaginary type?
Bye, bearophile