Are symbolic computing and functional programming related?

I was wondering if symbolic computation in a computer algebra system (for example, a symbolic toolbar in Matlab, Mathematica) and functional programming and how? The first refers to the last?

Thank you and welcome!

+6
functional-programming symbolic-math computer-algebra-systems
source share
2 answers

They are different animals. However, one point of overlap is term rewriting languages ​​such as pure ( http://code.google.com/p/pure-lang/ ). Pure can be used as a purely functional programming language. However, since it is implemented by overwriting, rather than reducing the graph, its expressions can always be compared with patterns in their bits and converted. Such symbolic manipulation is one of the key features of computer algebra systems. However, most computer algebra systems come from the fact that they have a lot of mathematics, and especially with powerful algorithms baked to solve various complex problems. You could write libraries to do this in functional languages ​​(and algebraic data types would make it more enjoyable than in imperative ones), but you still need to write these libraries.

+4
source share

These two concepts are not necessarily related. However, you might find it interesting that in the Lisp programming language developed by John McCarthy in 1958, the lambda calculus affected. Also this year, McCarthy published an Algebraic Language for Manipulating Symbolic Expressions , which presented a very simple program of symbolic differentiation (see Appendix I). Therefore, you can see that these two concepts were very close in the beginning.

+1
source share

All Articles