¿En qué consiste la programación automática?

May 5, 2022

La programación automática en informática y en ingeniería informática se refiere a la producción de código de programación por parte de algún sistema o software en respuesta a entradas o comandos más abstractos del usuario. En un sentido, la programación automática describe cualquier situación en la que un ordenador o software sustituye una declaración introducida por un programador por un bloque de código que puede realizar concretamente las acciones descritas en la declaración. ¡Conoce todo sobre el sowftware automático!

En otro sentido, la programación automática puede describir el objetivo de crear un lenguaje o sistema de programación que pueda ensamblar intuitivamente una aplicación completa basándose únicamente en las mínimas indicaciones del programador. La programación automática puede utilizarse en algunos campos de la investigación informática para referirse al proceso de diseño de un sistema de inteligencia artificial (IA) capaz de producir de forma autónoma un programa para completar una tarea o de auto-modificar su propio código para mejorar la funcionalidad.

Definición de programación automática

La definición de programación automática es algo vaga. Originalmente se utilizó durante los primeros años de la programación informática para describir la traducción de instrucciones abstractas en lenguaje ensamblador a código máquina expandido. Se llamaba programación automática porque el compilador sustituía automáticamente una única instrucción legible para el ser humano por docenas o más instrucciones de código máquina, escribiendo esencialmente el programa de forma automática y primitiva. Los compiladores de lenguajes siguen realizando las mismas acciones en la mayoría de los casos, independientemente del lenguaje de programación superpuesto que se utilice.

Usos del término

Otro uso del término «programación automática» es para describir la generación automática de código. Esto es cuando un entorno de desarrollo integrado (IDE) u otra herramienta se puede utilizar visualmente, o de alguna manera muy fácil, para especificar cómo un usuario final vería un programa. Una vez que se ha creado el resultado deseado, el software o IDE puede producir automáticamente el código fuente funcional para obtener el resultado sin ninguna otra entrada del programador.

Código fuente

En algunos casos, la programación automática también se refiere al estudio de cómo implementar lenguajes a un nivel tan alto que el código fuente parezca un lenguaje natural. Un lenguaje de programación como éste produciría automáticamente la aplicación basándose en la amplia entrada del programador. Sin embargo, por muy automático que sea un lenguaje, hay que tener en cuenta que el programador necesita en algún momento modificar manualmente el código para obtener una funcionalidad específica utilizando el propio lenguaje de programación.

En el campo de la inteligencia artificial, se investiga el desarrollo de un sistema que pueda programarse automáticamente para añadir capacidades que originalmente no tenía. Esto también se extiende a las IAs que son capaces de escribir software independiente que puede resolver un problema específico. Una aplicación sería crear un lenguaje de programación que pudiera utilizar la IA para generar prototipos de programas rápidos.