Free-Form Linguistic Input In Mathematica 8
vbraga writes "With the release of Mathematica 8, it now allows input through free-form English instead of the Mathematica syntax, just like the Wolfram|Alpha engine. The results are impressive. From the blog post: 'I routinely found myself using free-form linguistics as an integral part of longer computations — randomly interspersing Mathematica syntax and free-form linguistics on different lines in a Mathematica session, and just using whichever was most convenient for a particular input. And here's an exciting part: in Mathematica 8 the free-form linguistics doesn't just operate line-by-line. It knows the context in which it's used in a notebook, so you can use it to build things up.'"
So can you can say things like "there exists a post for which the ordinal index is one?"
Judging from the article, this amounts to some fairly rich integration with Wolfram Alpha.
Now why would it make sense to, in essence, turn Mathematica into a partially cloud-based application? Could it be because of all the millions of college students around the world who have pirate copies? Surely not!
How is this going to help me find Natalie Portman get all these hot grits out of my pants? Natural language is all good, and this is a huge step forward, but in 2010, I won't be truly impressed with a tech demo until it can grasp antiquated slashdot memes from almost a decade ago. I know you guys at Wolfram are reading this, so I fully expect something unexpected when I calculate the number of surface area of football fields it takes to hold the library of congress printed out on 8.5x11" paper with 1" margins. Natural language is one thing for mathematicians, it's another for the average 4chan user. Now that's bleeding edge.
moox. for a new generation.
There is an inherent problem with free-form linguistic input to computer systems.
If it doesn't have near-perfect comprehension of a wide range of topics, it's
frustrating as hell. It's like talking to a person that is mostly there, but has
brain lesions that wiped out part of their memory or frontal lobe, making them
oblivious to some common concepts and ways of speaking.
It's directly analogous to the "uncanny gulf" between a near-perfect computer-graphics person
and a real person. It freaks the hell out of people.
I'm not saying that natural language interfaces are always going to be a bad idea, but
the system underneath needs true comprehension of the world and the motives of speakers,
and of many ways of expressing the same thing. The bar is very, very high.
Where are we going and why are we in a handbasket?
When you are programming think about how often you use code completion because you can't remember parameter order, and how often you google stuff because you can't remember the exact class/function name. This lets you "google" without leaving the page, and cuts down on the amount of typing necessary. The fact that they allow you to refine the interpretation is what really makes this the difference between a frustrating and smooth experience.
I could not yet try Mathematica 8 out, but I hope one will be able to turn the feature on and off. A switch like in "perl -w" should be built in. Mathematica is first of all also a programming language, especially for Mathematics and colloquial language is not precise. It could be be frustrating if wrong syntax still produces reasonable results. Incorrect, but working code might become the standard if one does not notice. Its like with memory allocation errors in C produced by incorrect code which still compiles. It will haunt the programmer in the long term.