Optical Processing: an Alternative to Digital Computing