January 1, 1993
When you were first testing your ideas for Mathematica in SMP, it would have been about the time Clocksin and Mellish were bringing Prolog to a wider audience with their book. Were you influenced by Prolog at that time?
No, actually I wasn’t. I had never written a program in Prolog. I’d read the manual. The main thing that I was trying to do was to imitate what seemed to be what happens when you do mathematical calculations; that is, that you are continually applying rules of mathematics. The transformation-rule model has not been widely adopted. Prolog was an attempt to adopt it…
Prolog [has a] fatal flaw. A language where fundamental operations give you no clue as to how long they might take or what’s going on isn’t going to cut it. You have to give the user a reasonable conceptual model of what the computer is doing. It doesn’t matter if they’re a factor of ten wrong in knowing how many instructions it’s going to take, but it does matter if they can’t estimate whether this is an exponential time algorithm or something else.