Tanto la programación declarativa como la algorítmica presentan ventajas que pueden ser muy útiles, dependiendo del área de aplicación.[4]
1. Diseño de lenguaje y escritura de programas
- La sintaxis de los lenguajes declarativos es más sencilla que la de los algorítmicos.
- Los lenguajes algorítmicos proporcionan facilidades para la compilación separada, a diferencia de los declarativos.
- Los algorítmicos tienen gran variedad de mecanismos de reutilización de software, mientras que los declarativos usan el método rudimentario de 'preámbulo de funciones'.
- Es mucho más fácil de analizar un lenguaje declarativo que uno algorítmico, pues este requiere el uso de algún tipo de pseudocódigo.
- Los lenguajes declarativos poseen pocos entornos de desarrollo o plataformas, mientras que el algorítmico cuenta con potentes entornos, muchos de ellos visuales.
2. Verificación de programas
- Los programas del lenguaje declarativo son fáciles de verificar, mientras que en los algorítmicos esto se complica debido a sus definiciones semánticas complejas.
- De la misma forma, el lenguaje declarativo está más adaptado para permitir a los programas terminar bajo cualquier circunstancia concebible.
- Los lenguajes declarativos poseen buena legibilidad pero no ofrecen buenas herramientas de depuración. Los algorítmicos tienen herramientas de depuración muy potentes.
3. Coste y eficiencia
- Los lenguajes declarativos suelen ser menos eficientes que otros más convencionales debido a la dificultad de implementar en máquinas de arquitecturas comunes las operaciones de unificación y emparejamiento.
- Un lenguaje declarativo requiere menor cantidad de código que un lenguaje algorítmico.
|