In the original optical computing paradigm it was generally envisaged that large arrays of simple optoelectronic logic elements would be used to implement single instruction multiple data based algorithms such as data base management and mathematical morphology.