Please enable JavaScript.
Coggle requires JavaScript to display documents.
Modelo de Programación Funcional. - Coggle Diagram
Modelo de Programación Funcional.
2.1 Introducción al modelo de programación funcional.
La programación funcional es aquel lenguaje donde las variables no tienen estado no hay cambios en éstas a lo largo del tiempo y son inmutables no pueden cambiarse los valores a lo largo de la ejecución.
Características
Transparencia referencial
Facilita la comprensión y la depuración de los programas.
Abstracción funcional
Facilita la reutilización del código y el desarrollo de programas más modulares.
Inmutabilidad
Esto permite que los programas sean más fiables y eficientes.
2.7. Evaluación perezosa.
Refiere a la estrategia de posponer la evaluación de una expresión hasta que su valor sea realmente necesario.
Evaluación Estricta
En una evaluación estricta (por defecto en la mayoría de los lenguajes de programación imperativos), las expresiones se evalúan inmediatamente cuando se encuentran.
Evaluación Perezosa
En la evaluación perezosa, las expresiones se retrasan hasta que su valor es necesario para un cálculo posterior.
2.2. Funciones.
Explica lo que son las funciones en programación funcional y cómo se definen.
Funciones de orden superior.
Las "funciones de orden superior" son funciones que pueden aceptar otras funciones como argumentos y/o devolver funciones como resultado.
Funciones puras
Una función pura siempre produce el mismo resultado cuando se llama con los mismos argumentos.
2.6. Árboles.
Cada nodo del árbol representa una operación (como suma, resta o multiplicación) o un valor (constante o variable).
Árboles de Sintaxis Abstracta (AST)
Se utilizan árboles de sintaxis abstracta para representar la estructura gramatical del código fuente
Árboles de Búsqueda
En un BST, los valores se organizan de manera que los valores menores se encuentran en el subárbol izquierdo y los valores mayores en el subárbol derecho.
Árboles Binarios
En un árbol binario, cada nodo tiene como máximo dos hijos, uno izquierdo y otro derecho.
2.3. Intervalos.
Un intervalo en programación funcional es un conjunto de valores que comprende un rango específico.
Representación de Intervalos
Los intervalos se pueden representar en programación funcional como tuplas, listas, objetos o tipos de datos personalizados, dependiendo del lenguaje de programación que estés utilizando.
Operaciones con Intervalos
La unión de intervalos, la intersección de intervalos, la diferencia entre intervalos, etc, estas operaciones permiten manipular conjuntos de valores de manera eficiente y son útiles en situaciones donde se deben combinar o comparar intervalos.
2.5. Aplicaciones de las listas.
Las listas se utilizan para almacenar una colección de datos de cualquier tipo
Manipulación de datos
Las listas se pueden utilizar para manipular datos, como ordenarlos, filtrarlos o combinarlos.
Representación de datos
Las listas se pueden utilizar para representar datos, como una secuencia de números o una lista de elementos.
Almacenamiento de datos
Las listas se pueden utilizar para almacenar datos, como números, cadenas de caracteres o objetos
2.1. El tipo de datos.
Es un atributo de una parte de los datos que indica al ordenador (y/o al programador) algo sobre la clase de datos sobre los que se va a procesar.
Tipos de Datos Inmutables: Describe los tipos de datos que no pueden ser modificados después de su creación.
Los tipos de datos básicos en la programación funcional son
Cadenas de caracteres
Listas: colecciones de elementos
Booleanos: verdadero o falso
Tuplas: colecciones de elementos con un número fijo de elementos
Números: enteros, reales, complejos
Tipos de Datos Mutables: Hace referencia a los tipos de datos que pueden ser modificados después de su creación.
2.4. Operadores.
Operadores Lógicos
Describe los operadores lógicos utilizados para la toma de decisiones y el control del flujo en programas funcionales.
Operadores de Comparación
Explica los operadores utilizados para comparar valores.
Operadores Aritméticos
Enumera y describe los operadores aritméticos utilizados en programación funcional.