In article <12169 at lanl.gov> jlg at lanl.gov (Jim Giles) writes: } Class ordinary_number:: (integer, float) } } Commutative infix operator '*' is } Inline complex function mixed_mult (complex::x, ordinary_number::y) } mixed_mult.real = x.real * y } mixed_mult.imag = x.imag **** * y /* I hope ?! */ } end SR 2*i == 2i