1. A method for performing optical constellation conversion, comprising: a) optically splitting each received symbol from a constellation of input symbols into M components and multiplying each component by a first predetermined different complex weighing factor, to achieve M firstly weighted components with different amplitudes; b) optically performing, by a nonlinear processor, a nonlinear transform on each M firstly weighted components, to obtain M outputs which are linearly independent; c) optically performing by a linear processor, a linear transform to obtain a new converted constellation by: c.1) optically multiplying, in the complex plane, each of said M outputs by a second predetermined different complex weighing factor, to achieve M secondly weighted components; and c.2) summing said M secondly weighted components.