La pregunta, tal como la leí, implica que el estado de los lenguajes de programación ya ha alcanzado un nivel casi perfecto, con muy poco espacio para un mayor desarrollo. Esto está muy lejos de la realidad.
¿Cuál es exactamente el propósito de un lenguaje de programación de todos modos? Hay muchas definiciones que se reducen a: “una interfaz hombre-computadora, que nos permite usar vocabulario y gramática para instruir a las computadoras a hacer algo”.
Entonces, en última instancia, el lenguaje de programación es una herramienta para decirle a las computadoras que hagan cosas. Por extensión, el campo de la programación se puede considerar en su infancia, en comparación con lo que podemos imaginar que es posible dadas las tecnologías actuales.
- Si alguna vez se inventó una máquina del tiempo, ¿a dónde te gustaría ir primero?
- ¿Quién inventó los principios de diseño (o) cuando los principios de diseño entraron en uso común?
- ¿Podría una especie inventar o descubrir algo que podría destruir todo el universo?
- Si alguien inventa una máquina consciente e inteligente, ¿se le considera un malvado?
- ¿Qué hubiera pasado si el sistema Android no hubiera sido inventado?
Si tuviera que pensar en nuevas direcciones para la programación, algunas ideas serían:
- Programación con lenguaje natural.
- Programación en otros idiomas además del inglés. Si bien esto se ha hecho en varios idiomas, no conozco nada que sea lo suficientemente maduro para el código de producción.
- Programación basada en voz. Ya sabes, mantener una conversación con una computadora y hacer que “programe” algo en función de lo que entiende. Actualmente puedes hablar con Siri, Alexa o Cortana para configurar alarmas y preguntar sobre el clima. Algún día en el futuro, los campos de inteligencia artificial y procesamiento del lenguaje natural podrán hacer mucho más.
Básicamente, cualquier cosa que facilite la programación de las personas es un invento a la espera de suceder.
Por otro lado, siempre hay espacio para optimizar el rendimiento y / o la salida de los lenguajes de programación actuales. La optimización automática por parte de los compiladores siempre puede beneficiarse de “nuevos inventos”.