A review is given of the present status of the non-linear optical materials and devices, and their applications for optical signal processing and computing. The primary motivation behind this review is to introduce the different areas involved, paying special attention to their interfaces. First, the optical non-linearities in semiconductor materials, semiconductor microstructures and photorefractive materials are introduced. For the semiconductors we discuss the third-order non-linear susceptibilities due to virtual transitions (e.g., bound electrons in intrinsic semiconductors and non-linear motion and energy relaxation of free carriers in doped semiconductors) and due to real transitions (e.g. valence-to-conduction-band transitions, free-carrier transitions, impurity transitions and transitions in excitons and excitonic complexes). Recent advances in engineering semiconductor microstructures are discussed and shown to enhance their third-order non-linear optical susceptibilities in comparison with the bulk semiconductors. The mechanism of the photorefractive effect is next introduced and analyzed in conjunction with several engineering approaches to enhance the performances of the photorefractive non-linearities (e.g., non-stationary recording, multiphoton excitation, combination of the photorefractive effect with the electrorefractive non-linearities near the band edge, etc.). Using the photorefractive materials as an example, we define a set of figures of merit based on the requirements from the optical devices for system applications. Using these figures of merit we evaluate and discuss the optimization of different photorefractive materials: ferroelectric oxides (e.g., LiNbO 3, BaTiO 3, KNbO 3, tungsten bronze family, etc.), compound semiconductors (e.g., GaAs, GaP, InP, CdS, CdSe, CdTe, etc.), silenites (e.g., Bi 12SiO 20, Bi 12GeO 20), and ceramics. Finally, the applications of non-linear optical materials are discussed using the photorefractive materials as an example. Two types of devices are distinguished: passive devices that are based on volume holographic storage of information and active devices that are based on continuous two-wave and four-wave mixing of optical information carrying waves. These devices are evaluated and their optimization is discussed in conjunction with applications to analog and digital optical signal processing and computing. Examples of analog (e.g., inverse filter and linear algebra processor) and digital (e.g., parallel access optical memories and reconfigurable interconnects) optical computing applications will be also discussed.