Definición
Sistema formal para expresar la computación basado en la abstracción de funciones, la aplicación, el enlace de variables y la sustitución; sirve como modelo de programación mínimo y fundamento de la programación funcional y la teoría de la computabilidad.
Principio
Principio
La computación se realiza mediante reglas de transformación sintáctica: alfa-conversión (renombrar variables ligadas), beta-reducción (sustituir un argumento por la variable ligada en el cuerpo de una función) y, en algunas formulaciones, eta-conversión (extensionalidad); las funciones son de primera clase y no hay estado incorporado.
Demostración
Demostración
Usando codificaciones de Church, los números naturales se representan como funciones de orden superior (números de Church) y la suma puede definirse como composición de abstracciones lambda; la beta-reducción de (add 1 2) produce el numeral correspondiente a 3.
Aplicación incorrecta
Aplicación incorrecta
Confundir igualdad sintáctica con equivalencia operativa, no evitar la captura de variables al sustituir (omitir alfa-conversión), o esperar efectos secundarios y estado mutable como en código imperativo —todo ello conduce a razonamientos o programas incorrectos.
Consecuencia
Consecuencia
Un modelo compacto y expresivo que caracteriza la computabilidad, sustenta sistemas de tipos y lenguajes funcionales, y aclara la equivalencia y transformación de programas mediante reducciones y formas normales.
Inversión
Inversión
Un modelo de máquina imperativa (por ejemplo, máquina de Turing con cinta mutable o una máquina de registros con estado) que enfatiza las actualizaciones secuenciales de estado en lugar de la aplicación de funciones mediante sustitución.
Límite
Límite
El cálculo lambda puro sin tipos omite tipos, datos primitivos y efectos; los lenguajes prácticos añaden tipos, primitivas y sistemas de efectos encima del estilo de cálculo lambda para gestionar recursos e interacciones con el entorno.
Tensión semántica
Tensión semántica
El cálculo lambda como modelo abstracto de computación versus su rol como sintaxis y semántica concreta de un lenguaje de programación; las variantes sin tipos y con tipos compiten entre expresividad y seguridad.
Síntesis
Síntesis
Un álgebra austera de funciones donde la computación se impulsa por sustitución: se definen funciones por abstracción, se aplican a argumentos y se calcula reduciendo sistemáticamente las expresiones, formando el núcleo conceptual de la computación funcional y la computabilidad teórica.