Función: El Bloque de Construcción de Programas

Un bloque de código reutilizable diseñado para realizar una tarea específica.

Las funciones permiten la abstracción y la reutilización del código (principio DRY). Pueden ser puras o impuras, y en lenguajes modernos son tratadas como ciudadanos de primera clase.

        graph LR
  Center["Función: El Bloque de Construcción de Programas"]:::main
  Pre_variable["variable"]:::pre --> Center
  click Pre_variable "/terms/variable"
  Rel_recursion["recursion"]:::related -.-> Center
  click Rel_recursion "/terms/recursion"
  Rel_compiler["compiler"]:::related -.-> Center
  click Rel_compiler "/terms/compiler"
  Rel_computational_neuroscience["computational-neuroscience"]:::related -.-> Center
  click Rel_computational_neuroscience "/terms/computational-neuroscience"
  classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
  classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
  classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
  classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
  linkStyle default stroke:#4b5563,stroke-width:2px;

      

🧒 Explícalo como si tuviera 5 años

Una función es como una máquina en una fábrica. Pones algo dentro (como materiales), la máquina hace su trabajo y sale algo (como un juguete). ¡Puedes usar la misma máquina una y otra vez!

🤓 Expert Deep Dive

La pila de llamadas gestiona los registros de activación. La optimización de llamadas de cola elimina el crecimiento de la pila. Los cierres (closures) capturan variables de ámbito adjunto. Las funciones puras no tienen efectos secundarios, permitiendo transparencia referencial. Funciones de orden superior toman o devuelven funciones.

🔗 Términos relacionados

Requisitos previos:

📚 Fuentes