ELÉCTRICA. LENGUAJES DE PROGRAMACION Y LAB. PRACTICA #8 “LENGUAJES FUNCIONALES” SEMESTRE: Enero-Junio 2019 DÍA/HORA: Martes/N5 SALON: infb BRIGADA: 229
Matricula : 1802778
Nombre Completo: Javier Tapia González
Carrera: Ingeniero Administrador de Sistemas (IAS)
Semestre: Enero-Junio 2019
Semestre (Red De Materias): 4to Semestre
Correo: javitapiglez@hotmail.com
Plan: 401
Ing. Valentín Belisario Domínguez Vera
A 15 de Mayo del 2019, San Nicolás de los Garza, Nuevo León
Practica #8
LENGUAJES FUNCIONALES.
Completar la siguiente tabla.
LENGUAJE CARACTERISTICAS CÓDIGO EJEMPLO
HASKELL Incluye muchas de las últimas cont::Int->Int
innovaciones en el desarrollo de los cont 0=0 lenguajes de programación cont n= 1+ cont (div n 10) funcional, como son las funciones de orden superior, evaluación perezosa, tipos polimórficos estáticos, tipos definidos por el usuario, encaje por patrones, y definiciones de listas. Incorpora, además, otras características interesantes como el tratamiento sistemático de la sobrecarga, la facilidad en la definición de tipos abstractos de datos, el sistema de entrada/salida puramente funcional y la posibilidad de utilización de módulos. ERLANG En Erlang se pueden realizar toda % Ejecuta la función loop() como un nuevo proceso y clase de proyectos en especial guarda el id del proceso en ‘Pid’. proyectos que necesiten tráfico de Pid = spawn(fun()-> loop() end), información de respuesta en tiempo % Envía un mensaje al proceso apuntado por ‘Pid’. real, donde para cada petición debe Pid ! “Hola Mundo en Erlang!”. haber una respuesta inmediata dependiendo de si se pudo resolver o no la petición. % Cuerpo de la función loop(). loop()-> % Recibe el mensaje enviado al proceso. receive Msg-> io:format("~p", [Msg]) % Imprime el mensaje en la consola. end. LISP El LISP es un lenguaje funcional que ((Nombre . "Jose") se apoya en la utilización de (Apellido . "Marchesi") funciones matemáticas para el (Numero-de-pies . 2) control de los datos. Pero el (Numero-de-ojos . 1.3)) elemento fundamental en el LISP es la lista. Y desde el punto de vista más amplio del término. Cada función del LISP y cada programa que generemos con él vienen dado en forma de lista. Por esta razón los datos no se pueden diferenciarse sintácticamente de los programas. SCHEME La filosofía de Scheme es ; función que suma dos números agregados como minimalista. Su objetivo no es argumento acumular un gran número de (define (suma num1 num2) funcionalidades, sino evitar las ; implementación del let anterior, aunque no es debilidades y restricciones que estrictamente necesario hacen necesaria su adicción. Así, (let Scheme proporciona el mínimo ;variables de la operación número posible de nociones ((numero1 num1) primitivas, construyendo todo lo (numero2 num2)) demás a partir de un reducido ; instrucción que suma los números, es decir, la número de abstracciones. Por función ejemplo, el mecanismo principal (+ numero1 numero2)) para el control de flujo son las llamadas recursivas finales.