Definición: ¿Qué significa Lenguaje (de programación) de quinta generación (5GL)?
Un lenguaje de programación de quinta generación (5GL) es una agrupación de lenguajes de programación que se basa en la premisa de que un problema puede resolverse y una aplicación que es creada para resolverlo proporciona restricciones al programa (programación basada en restricciones), en lugar de especificar algorítmicamente cómo se va a resolver el problema (programación imperativa).
En esencia, el lenguaje de programación se usa para denotar las propiedades o la lógica de una solución, en lugar de cómo se alcanza. La mayoría de los lenguajes de programación lógicos y basados en restricciones son 5GL. Un error común sobre los 5GL se relaciona con la práctica de algunos proveedores de 4GL de denotar sus productos como 5GL, cuando en esencia los productos son herramientas 4GL evolucionadas y mejoradas.
También es conocido como lenguaje de quinta generación.
Techinfo explica el lenguaje (programación) de quinta generación (5GL)
El salto más allá de los 4GL se busca adoptando un enfoque diferente al desafío computacional de resolver problemas. Cuando el programador dicta cómo debe verse la solución, especificando condiciones y restricciones de manera lógica, la computadora es libre de buscar una solución adecuada. La mayoría de los problemas aplicables resueltos por este enfoque se pueden encontrar actualmente en el dominio de la inteligencia artificial.
En las décadas de 1980 y 1990 se ha realizado una investigación considerable en el desarrollo de 5GL. A medida que se construyeron programas más grandes, se hizo evidente que el enfoque de encontrar un algoritmo dada una descripción del problema, instrucciones lógicas y un conjunto de restricciones es un problema muy difícil en sí mismo. Durante la década de 1990, la ola de exageraciones que precedieron a la popularización de los 5GL y las predicciones de que reemplazarían a la mayoría de los otros lenguajes de programación, dio paso a una realización más sobria.
PROLOG (acrónimo de PROgramming LOGic) es un ejemplo de lenguaje de programación lógica. Utiliza una forma de lógica matemática (cálculo de predicados) para resolver consultas en una base de datos de hechos y reglas proporcionada por el programador.