Smart Canvasses
I'm a software development engineer in Office and have been working mostly on the RichEdit editor since 1994. In this blog I focus mostly on mathematics in Office along with some posts on RichEdit and the early Windows days
Back in the 1980s while still actively researching and teaching nonlinear spectroscopy and laser physics, I had a dream. The dream was to make technical papers come alive. Not only would you be able to document your ideas on computers, but you would also be able to click on an equation and get the solution or graph the results. If you saw a graph in a paper, you'd be able to access the underlying formulas and generate new graphs for parameters you're particularly interested in.
To some degree I could do that with my PS Technical Word Processor, which ran on PCs and printed on laser printers (naturally since I was a laser physicist). I could copy the formulas from my papers into a C++ program, add a few raised dots for multiplication, and the program would churn out results and plots for publication.
Well that was back in the 1980s. Now we have something way cooler and the dream is coming true. I have to pinch myself sometimes to believe it's actually true! Word 2007 has a fabulous new math editing and display facility with typography rivaling TeX and considerably easier input methods. It's discussed in previous posts in this Word blog as well as in my own on Math in Office. Although the emphasis is on presentation, simple heuristics suffice in many cases to recover the underlying mathematical meanings.
Enter the Microsoft Math graphing calculator adapted as a Word 2007 add-in using Word's powerful object model. With it you can right click on an equation and obtain menu options to solve, graph, and simplify the equation. If you like the results, you can paste them into your document. What a great way to learn how mathematics works if you're a student. And what a great way to carry out your research if you're a scientist or engineer.
This isn't the first time such a "smart canvas" was created with computational capabilities. For example, Mathematica works in a similar way and offers considerably greater computational and graphical power. But it's relatively specialized and expensive and the mathematical typography isn't as good. Note that the approach used by Microsoft Math could be used by a Mathematica, MapleSoft, MathCad, etc., add–in, and hopefully such add–ins will be created. Then you could have the power of a Mathematica with the math typography and environment of Word 2007.
It would be cool to generalize the approach so that any math engine could work seamlessly with a variety of Microsoft Office applications and Internet Explorer. That's a new version of my dream. It's all so exciting!
-Murray