• Barajar
    Activar
    Desactivar
  • Alphabetizar
    Activar
    Desactivar
  • Frente Primero
    Activar
    Desactivar
  • Ambos lados
    Activar
    Desactivar
  • Leer
    Activar
    Desactivar
Leyendo...
Frente

Cómo estudiar sus tarjetas

Teclas de Derecha/Izquierda: Navegar entre tarjetas.tecla derechatecla izquierda

Teclas Arriba/Abajo: Colvea la carta entre frente y dorso.tecla abajotecla arriba

Tecla H: Muestra pista (3er lado).tecla h

Tecla N: Lea el texto en voz.tecla n

image

Boton play

image

Boton play

image

Progreso

1/12

Click para voltear

12 Cartas en este set

  • Frente
  • Atrás
Que es la programación funcional
es un paradigma de programación declarativa basado en el uso de funciones matemáticas tiene sus raíces en el cálculo lambda, un sistema formal desarrollado en los años 1930 para investigar la definición de función, la aplicación de las funciones y la recursión.
Cuál es su utilidad
Puede ayudarnos a crear software más robusto, mantenerle y fácil de testear. Quizás hayas empezado a oír hablar de lenguajes de programación funcional como Scala, Haskell o Lisp, pero quizá no sepas todavía que Java en su versión 8 permite usar la potencia de la programación funcional sin abandonar su orientación a objetos.
cuáles son las características principales de la programación funcional
Características propias de estos lenguajes son la no existencia de asignaciones de variables y la falta de construcciones estructuradas como la secuencia o la iteración Existen dos grandes categorías de lenguajes funcionales: los funcionales puros y los híbridos. La diferencia entre ambos estriba en que los lenguajes funcionales híbridos son menos dogmáticos que los puros, al admitir conceptos tomados de los lenguajes imperativos
Primera clase y de orden superior
Funciones de orden superior son funciones que pueden tomar otras funciones como argumentos o devolverlos como resultados
las funciones de primera clase pueden recibir como argumentos y resultados otras funciones
Puras
Las funciones puras no tienen efectos secundarios en me memoria. Esto significa que las funciones puras tienen varias propiedades útiles, muchas de las cuales pueden ser utilizadas para optimizar el código
Recursivas
Las funciones recursivas se invocan a sí mismas, permitiendo que una operación se realice una y otra vez hasta alcanzar el caso base. Aunque algunas recursividades requieren el mantenimiento de una pila, la recursividad mediante una cola puede ser reconocida y optimizada mediante un compilador dentro del mismo código utilizado, para implementar las iteraciones en un lenguaje imperativo.
Evaluación estricta y no estricta
hacen referencia a cómo los argumentos de las funciones son procesados cuando una expresión está siendo evaluada. La diferencia técnica está en la notación semántica de las expresiones que contienen cálculos fallidos o divergentes.
Sistemas de tipos
El uso de tipos de datos algebraicos y la coincidencia de patrones hace que la manipulación de estructuras de datos complejas convenientes y expresivos, la presencia de comprobaciones estrictas de tipos en tiempo de compilación hace que los programas sean más fiables
Programación funcional y no funcional
Es posible utilizar un estilo de programación funcional en lenguajes que tradicionalmente no se consideran lenguajes funcionales por ejemplo en Java, las clases anónimas a veces pueden ser utilizados para simular clausuras
ventajas y desventajas de la programación funcional
Ausencia de efectos colaterales
Proceso de depuración menos problemático
Pruebas de unidades más confiables
Mayor facilidad para la ejecución concurrente
cuales son los lenguajes funcionales
Entre los lenguajes funcionales puros, cabe destacar a Haskell y Miranda. Los lenguajes funcionales híbridos más conocidos son Scala, Lisp, Clojure, Scheme, Ocaml, SAP y Standard ML
uso y aplicacion de los lenguajes funcionales
La programación funcional es más popular en el ámbito académico que en ámbitos industriales. Sin embargo se han empezado a usar importantes lenguajes de programación funcionales en sistemas comerciales o industriales.
importantes empresas como WhatsApp, Facebook, o T-Mobile optaron por Erlang como lenguaje en alguno de sus desarrollos