Para funcionar, un programa de ordenador necesita un software de ordenador. Estos se desarrollan utilizando lenguajes específicos que describen el conjunto de acciones consecutivas que una computadora debe realizar. Basado en algoritmos muy precisos, no siempre es fácil saber cómo funciona. Aquí hay un breve resumen útil. Los lenguajes de programación permiten que los programas y los programas se comuniquen con las máquinas. Dan las órdenes para decirle a la máquina cómo reaccionar a la petición de un usuario. Este es un enfoque básico y la programación informática es mucho más compleja que eso. Así pues, el lenguaje de programación se clasifica en dos grandes familias de programación: el lenguaje imperativo y el lenguaje funcional. La diferencia entre estas dos familias resulta en la forma en que las instrucciones son dadas y procesadas por la máquina. En lenguaje imperativo, el programa sigue una serie de instrucciones que el programa ejecuta. Están sujetos a una condición que, si no se cumple, impide su funcionamiento. El lenguaje funcional, por otro lado, consiste en un programa construido por funciones. Las funciones están anidadas entre sí. Hablamos de recursividad cuando la función se llama a sí misma. El lenguaje informático también se clasifica en dos categorías generales. Hay idiomas interpretados e idiomas compilados. La diferencia radica principalmente en la forma en que se maneja la comunicación. El lenguaje interpretado necesita un programa auxiliar que traduzca las instrucciones dadas. Lenguajes como MATLAB, PHP para desarrollar sitios web o Prolog para la inteligencia artificial. Hablamos de lenguaje compilado cuando el archivo es completamente autónomo. Para eso necesita un compilador que permita traducir una vez un programa que pueda funcionar en todas partes.  ¡El archivo resultante es un ejecutable!  Este tipo de archivo es muy práctico ya que sólo puede ser modificado por un propietario. Cualquier otro que intente modificarlo debe recompilar el archivo resultante. Entre los lenguajes informáticos compilados más comunes se encuentran el C y el C++, que se utilizan en la programación de videojuegos o aplicaciones, por ejemplo. También hay lenguajes informáticos intermedios que combinan el lenguaje interpretado y el lenguaje compilado al mismo tiempo. En esta categoría encontramos lenguajes como Python, Java o LISP...