Los lenguajes de cuarta generación son ciertas herramientas prefabricadas, que aparentemente dan lugar a un lenguaje de programación de alto nivel que se parece más al idioma inglés que a un lenguaje de tercera generación, porque se aleja más del concepto de "procedimiento". Pueden acceder a bases de datos.
Algunos restringen el nombre de "lenguajes de cuarta generación" para los lenguajes orientados a objetos.
Ejemplos: NATURAL, PL/SQL...
Ventajas y desventajas de los lenguajes de cuarta generación:
- Primera generación: Los primeros ordenadores se programaban directamente en código binario, que puede representarse mediante secuencias de ceros y unos sistema binario. Cada modelo de ordenador tiene su propio código, por esa razón se llama lenguaje de máquina.
- Segunda generación: Los lenguajes simbólicos, asimismo propios de la máquina, simplifican la escritura de las instrucciones y las hacen más legibles.
- Tercera generación: Los lenguajes de alto nivel sustituyen las instrucciones simbólicas por códigos independientes de la máquina, parecidas al lenguaje humano o al de las Matemáticas.
- Cuarta generación: se ha dado este nombre a ciertas herramientas que permiten construir aplicaciones sencillas combinando piezas prefabricadas. Hoy se piensa que estas herramientas no son, propiamente hablando, lenguajes. Algunos proponen reservar el nombre de cuarta generación para la programación orientada a objetos.
- Quinta generación: se llama así a veces a los lenguajes de la inteligencia artificial, aunque con el fracaso del proyecto japonés de la quinta generación el nombre ha caído en desuso.
- Ventajas:
- Permiten elaborar programas en menor tiempo, lo que conlleva a un aumento de la productividad.
- El personal que elabora software sufre menos agotamiento, ya que generalmente requiere escribir menos.
- El nivel de concentración que se requiere es menor, ya que algunas instrucciones, que le son dadas a las herramientas, a su vez, engloban secuencias de instrucciones a otro nivel dentro de la herramienta.
- Cuando hay que dar mantenimiento a los programas previamente elaborados, es menos complicado por requerir menor nivel de concentración.
- Desventajas:
- Las herramientas prefabricadas generalmente son menos flexibles que los lenguaje de alto nivel.
- Se crea dependencia de uno o varios proveedores externos, lo que se traduce en pérdida de autonomía. A menudo las herramientas prefabricadas contienen librerías de otros proveedores, que conlleva a instalar opciones adicionales que son consideradas opcionales. Los programas que se elaboran generalmente se ejecutan sólo con la herramienta que lo creó (a menos que existan acuerdos con otros proveedores).
- A menudo no cumplen con estándares internacionales ISO ANSI. Por este motivo invertir tiempo y dinero es un riesgo a futuro, porque no se sabe a ciencia cierta cuanto tiempo permanecerá la herramienta y su fabricante en el mercado.