We know mathematics have both symbolic and numeric computation. But why is Lisp, as a common programming language, connected to symbolic computation more closely?
What parts of Lisp make it good for symbolic problems?
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
At the time, symbols were a first class object in Lisp, and less so in other languages. Most other languages were focused on numeric computing (1 + 2 + SIN(PI / 2)).
In Lisp, the Symbol is a specific language artifact (distinct from a character string) that made working with Things That Aren’t Numbers very easy. Since these were first class objects within the system, Lisp provided “free” parsers, readers, and writers of such objects.
‘(A + B / 2) was trivial to represent in off the shelf Lisp.
The ease of representation lifted the burden of reading and writing those aspects of a symbolic computing application, making it easier to focus on the core problems (equation reduction, problem solver, theorem proofs, etc.)
Today, even still, few languages have a first class concept of the Symbol. But there are enough utilities and such that they are less important today than they were back in the day when it was basic Lisp vs Fortan vs Pascal for this kind of work.