Un lenguaje de programación multiparadigma es el cual soporta más de un paradigma de programación. Según lo describe Bjarne Stroustrup, permiten crear “programas usando más de un estilo de programación”.
El objetivo en el diseño de estos lenguajes es permitir a los programadores utilizar el mejor paradigma para cada trabajo, admitiendo que ninguno resuelve todos los problemas de la forma más fácil y eficiente posible.
Por ejemplo, lenguajes de programación como C++, Genie, Delphi, Visual Basic o PHP, combinan el paradigma imperativo con la orientación a objetos. Incluso existen lenguajes multiparadigma que permiten la mezcla de forma natural, como en el caso de Oz, que tiene subconjuntos (particularidad de los lenguages lógicos), y otras características propias de lenguages de programación funcional y de orientación a objetos. Otro ejemplo son los lenguajes como Scheme (paradigma funcional) o Prolog (paradigma lógico), que cuentan con estructuras repetitivas, propias del paradigma imperativo.
OZ.
Oz es un lenguaje de programación multi-paradigma y lenguaje de programación esotérico.
Oz fue originalmente desarrollado en el laboratorio de Programación de Sistemas en la Universidad de Saarland por Gert Smolka y sus estudiantes a comienzos de 1990. En 1996 el desarrollo de Oz continuó en cooperación con el grupo de investigación de Seif Haridi en el Instituto Sueco de Ciencias de la Computación. Desde 1999, Oz ha sido continuamente desarrollado por un grupo internacional, el Consorcio Mozart, que estuvo compuesto originalmente por la Universidad de Saarland, el Instituto Sueco de Ciencias de la Computación, y la Universidad Católica de Louvain. En 2005, la responsabilidad de gestionar el desarrollo de Mozart fue transferida a un grupo base, el Tablero Mozart, con el propósito expreso de abrir el desarrollo de Mozart a una comunidad mayor.
Oz tiene una implementación de gran calidad, el Sistema de Programación Mozart, que fue liberado bajo una licencia de Código Abierto por el Consorcio Mozart. Mozart ha sido portado a diferentes plataformas como Unix, FreeBSD, Linux, Microsoft Windows, y Mac OS X.
El lenguaje de programación Oz es el interfaz de usuario del sistema de composición musical mediante restricciones Strasheela
Ejemplo:
Este programa sencillo compara las tres variables que le damos e indica cual es el maximo.
local Max X Y Z in
proc {Max X Y Z}
if X >= Y then Z = X else Z = Y end
end
X = 5
Y = 10
{Max X Y Z} {Browse Z}end
proc {Max X Y Z}
if X >= Y then Z = X else Z = Y end
end
X = 5
Y = 10
{Max X Y Z} {Browse Z}end
http://es.wikipedia.org/wiki/Oz_(lenguaje_de_programaci%C3%B3n)
http://es.wikipedia.org/wiki/Lenguaje_de_programaci%C3%B3n_multiparadigma
http://www.mozart-oz.org/documentation/tutorial/