lunes, 15 de noviembre de 2010

Reporte #8

Lenguajes Multiparadigma

Un lenguaje de programación multiparadigma es el cual soporta más de un paradigma de programación, ya que 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, siendo que ninguno resuelve todos los problemas de la forma más fácil y eficiente posible.


Oz

Oz es un ejemplo de un lenguaje multiparadigma, fue desarrollado originalmente por Gert Smolka y sus estudiantes en una universidad de Alemania a comienzos de los 90's. Este lenguaje tambien es multiplataforma, ya que implementaciones en Unix, Microsoft Windows, Mac, OS X, Linux y FreeBSD.


Paradigmas: Incluye los siguientes paradigmas en su programación.

  • Lógica.
  • Funcional.
  • Imperativa.
  • Orientada a Objetos.
  • Con Restricciones.
  • Distribuida.
  • Concurrente.

Características:
  • Lenguaje Multiplataforma.
  • Fácil para programar aplicaciones abiertas y tolerantes a fallas en el lenguaje, lo que permite mucho ahorro de tiempo.
  • Permite hacer búsquedas definidas por el usuario.
  • Permite captar los diferentes paradigmas de manera natural, lo que permite al programador usar la técnica mas eficiente para crear códigos.

Programa:

  1. proc {Merge Xs Ys Zs}
  2. cond
  3. Xs = nil then Zs = Ys
  4. [] Ys = nil then Zs = Xr
  5. [] X Xr in Xs = X|Xr then Zr in
  6. Zs = X|Zr {Merge Xr Ys Zr}
  7. [] Y Yr in Ys = Y|Yr then Zr in
  8. Zs = Y|Zr {Merge Xs Yr Zr}
  9. end
  10. end

Multiparadigma:
Este lenguaje lo podemos considerar imperativo ya que por medio de un conjunto de instrucciones se le indica al lenguaje o al computador, que hacer. Decimos que es con restricciones ya que los valores de algunas variables pueden ser obtenidas por medio de cualquier ecuación que sea programada, ya sea sencilla o compleja. Este lenguaje también se caracteriza por desarrollar sistemas abiertos y transparentes, que sean tolerantes a fallas, po rlo que lo hace una programación de tipo distribuida. También permite un programación concurrente, lo que permite ejecutar múltiples tareas o hilos de ejecución creados por un único programa. Sin duda es también un lenguaje OO ya que le es posible crear objetos en un entorno y una interacción entre ellos. Y por ultimo se dice que es lógico-funcional ya que a la entrada de datos y el proceso de los mismos por funciones, se puede obtener una salida o un resultado.

Referencias:


9 comentarios:

  1. muy bien tu reporte, toda la informacion que pusiste de oz, asi como el codigo,

    ResponderEliminar
  2. Me parece muy bueno tu reporte, ademas del codigo que agregaste. Muy biien!

    ResponderEliminar
  3. La informacion esta muy bien, que bueno que pusiste las referencias, solamente te falto la imagen de la pantalla.

    ResponderEliminar
  4. No le entendi muy bein a tu codigo, te falto un poco de explicacion para entenderle un poco mejor, y unas pantallas de ejecucion

    ResponderEliminar
  5. te falto explicar el codigo y la pantalla de ejecucion muy bien por las referencias

    ResponderEliminar
  6. Buena explicacion de todo pero que fue del codigo que es lo que hace no esta muy entendible que digamos

    ResponderEliminar
  7. pues esta muy bien por las definiciones de programas pero el codigo la verdad no lo entendi falto eso ricky D:

    ResponderEliminar
  8. hola!!

    creo que lainfoescorrecta, pero te falto algo de explicacion del codigo ..

    =)

    ResponderEliminar
  9. Ok, aunque faltó más explicación sobre el código y pantallas.

    Calificación: 2/3

    ResponderEliminar