Technology Guide--The Technology Inside Matters
Task-Oriented Superfunctions (TOSF)

Mathematica's task-oriented superfunctions (TOSF) each subsume the functionality of a large number of algorithm-based functions in non-Mathematica systems.

Unlike all other computation systems, Mathematica's functions are "task-oriented"--named by which task they perform, not which algorithm(s) they use to perform them.

This distinction particularly affects high-level, multistage, multialgorithm tasks, handled by "superfunctions" in Mathematica. Take numerical differential equation solving as an example. In Mathematica, NDSolve is all you need to use. Applying this TOSF analyzes your equation and decides (unless you set an override) which of its dozens of algorithms and controller methods to deploy to get you an accurate answer quickly--sometimes switching mid-calculation for further optimization.

By contrast, non-Mathematica computation systems make you analyze your equation manually to determine which function to apply--e.g., where in Mathematica you use NDSolve, in Matlab you must choose among ode45, ode23, ode113, ode15s, bvp4c, pdepe, and so on. Get the selection wrong and your computation could run inefficiently, fail altogether, or, worse still, produce an inaccurate answer. And there's no switching mid-calculation.

Another crucial benefit of the TOSF approach is future-proofing: algorithmic innovations enable TOSF to perform better without the form of the input or output being affected. Compatibility is therefore maintained while having the latest computational technology under the skin.

This shows how task-oriented superfunctions can each replace a large number of functions in non-Mathematica systems.



Select Language: ja