lunes, 20 de septiembre de 2010

~Lenguajes Funcionales

Hola a todos, en esta entrada les hablaré un poco acerca de los lenguajes funcionales.

La programación funcional está basada en el uso de funciones aritméticas. Los programas escritos en lenguaje funcional se caracterizan por definiciones de funciones. En estos lenguajes no existe la declaración de variables, como tampoco la iteración y la secuencia (esto hace que cuando tengan que repetirse algunas instrucciones se haga por medio de recursión), se trabaja con memoria dinámica y en algunos lenguajes solo se puede escribir en una sola línea lo cual dificulta mucho al leer el programa. Estos lenguajes se usan sobre todo para la Inteligencia Artificial.

Algunos ejemplos de lenguajes funcionales destaca Haskell y Miranda. Otros lenguajes que son más conocidos son Scala, Scheme, SAP, Standar ML, entre otros. Erlang también es un lenguaje funcional de programación concurrente y R es un lenguaje que esta dedicado a estadística.


Lenguaje Funcional R

Este lenguaje funcional fue creado por Ross Ihaka  y Robert Gentleman está diseñado para análisis estadísticos y gráficos. Es un lenguaje de distibución gratuita con los términos de GNU General Public Licence.

El código fuente de R está escrito la mayor parte en C y algunas partes en Fortran, es principalmente para el sistema operativo Unix y Linux, también para Windows pero como archivos binarios precompilados, así como para Linux, Macintosh, Alpha Unix, entre otros.

R tiene muchas funciones con fines de estadística y gráficos, los cuales se pueden guardar en diferentes formatos entre ellos jpg, png, bmp, ps, pdf, entre otros, esto depende del sistema operativo. En cuanto a lo estadístico, estos se muestran en pantalla y algunos resultados intermedios se pueden guardar o exportar a un archivo para ser utilizados después.

Este lenguaje está orientado a objetos, también es un lenguaje interpretados como el caso de java, lo que significa que son ejecutados sin necesidad de hacer archivos ejecutables.

Les dejo en los links importantes un manual de este lenguaje, les puede ayudar para la tarea que tenemos y también para conocer más cosas de este lenguaje. Esta completo y tiene mucha información.


Cálculo Lambda

Alonso Church fue el desarrollador del cálculo lambda  en los años de 1030s con el fin de conocer la definición de funciones.

En los lenguajes de programación el cálculo lambda proporciona una sintaxis, semántica y una forma para definir primitivas de programación.

Sintaxis



Ejemplos.

(λ x. x + 2) 3 -->
(λ f. f 3) (λ x. x + 2) --> (λ x. x + 2) 3 --> 3 + 2 --> 5



Referencia
http://exa.unne.edu.ar/informatica/programacion3/public_html/apuntes/Calculo_Lambda.pdf

3 comentarios:

  1. Ustedes me confunden. El reporte 4 según yo consiste en dos programas implementados en lenguajes funcionales distintos, idealmente acompañados por una breve descripción del lenguaje, la función del programa y porqué es bueno hacerlo en ese lenguajes, pero tú y otras personas también están subiendo puras descripciones de lenguajes... Haz por favor los programas también. Por ahora no te pongo puntos por el reporte 4 y te pongo tres puntos en el lab por esta entrada (por no saber qué hacer con ella).

    ResponderEliminar
  2. hola. hablas sobre los lenguajes funcionales, pero me gustaria que subieras mas ejemplos sobre ellos :D
    para entender más es concepto de cada uno.

    ResponderEliminar
  3. Te siguen faltando los programas, Carmen. Si no están la semana que viene, te pongo NP para el cuarto reporte.

    ResponderEliminar