Son diferentes bestias. Sin embargo, un punto de superposición son los lenguajes de reescritura de términos como pure (http://code.google.com/p/pure-lang/). Pure se puede usar como un lenguaje de programación puramente funcional. Sin embargo, dado que se implementa mediante la reescritura de términos en lugar de la reducción de gráficos, sus expresiones siempre pueden combinarse con patrones en sus bits y transformarse. Este tipo de manipulación simbólica es una de las características clave de los sistemas de álgebra computarizada. Dicho esto, una gran parte del poder de los sistemas de álgebra computacional proviene de tener muchas y muchas matemáticas preparadas, y especialmente tener poderosos algoritmos preparados para resolver varios problemas complicados. Podría escribir bibliotecas para hacer eso en los lenguajes funcionales (y los tipos de datos algebraicos lo harían más agradable que en los imperativos), pero igual tendría que escribir esas bibliotecas.
Se relacionan en la medida en que ambos son utilizados por personas que son buenas en matemáticas. – Ingo