Programming with Natural Language Is Actually Going to Work
17th November 2010
Read it. The inventor of Mathematica is optimistic.
The most important is that programs a user might specify with short pieces of natural language must typically be short—and readable—in the computer language. Because otherwise the user won’t be able to tell—at least not easily—whether the program that’s been produced actually does what they want.
A second, somewhat related, criterion is that it must be possible for arbitrary program fragments to stand alone—so that large programs can realistically be built up incrementally, much like a description in natural language is built up incrementally with sentences and the like.
Well, to get the first of these characteristics requires a very high-level language, in which there are already many constructs already built in to the language—and well enough designed that they all fit together without messy “glue” code.
And to get the second characteristic essentially requires a symbolic language, in which any piece of any program is always a meaningful symbolic expression.
Well, conveniently enough, there is one language that satisfies rather well both these requirements: Mathematica!
My, what a surprise. Aren’t you surprised? I’m sure surprised.