Tarea
El programa es expresadoa través de un conjunto de funciones expresados bajo ecuaciones o reglas.
Características:
Incluye muchas de las últimas innovaciones en el desarrollo de los lenguajes de programación funcional, comoson 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, otrascaracterí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 deutilización de módulos.
Se utiliza como referencia el entorno de programación Hugs y se supone que el lector tiene unos mínimos conocimientos del modelo de programación imperativo o tradicional.Historia:
A principios de la década de los setenta aparecieron los primeros síntomas de lo que se ha denominado crisis del software. Los programadores que se enfrentan a la construcción de grandes sistemasde software observan que sus productos no son fiables. La alta tasa de errores conocidos (bugs) o por conocer pone en peligro la confianza que los usuarios depositan en sus sistemas.
Cuando losprogramadores quieren corregir los errores detectados se enfrentan a una dura tarea de mantenimiento. Cuando se intenta corregir un error detectado, una pequeña modificación trae consigo una serie deefectos no deseados sobre otras partes del sistema que, en la mayoría de las ocasiones, empeora la situación inicial.
Funciones:
Un lenguaje utiliza funciones de orden superior cuando permite que lasfunciones sean tratadas como valores de primera clase, permitiéndo que sean almacenadas en estructuras de datos, que sean pasadas como argumentos de funciones y que sean devueltas como resultados.
La...
Regístrate para leer el documento completo.