

 |
 |
 |
 |
 |
 |
 |
 |
 |
 Working with Unevaluated Expressions
 |
 |
 |
 |
 |
 |

Organization: | Wolfram Research, Inc. |
 |
 |
 |
 |
 |
 |
 1999 Mathematica Developer Conference
 |
 |
 |
 |
 |
 |
 Champaign, IL
 |
 |
 |
 |
 |
 |
 Most experienced Mathematica programmers will eventually encounter tasks or applications in which they need to manipulate expressions without letting them evaluate. For instance, typesetting and interpretation rules, debugging programs, code analysis tools, and constructing code on the fly at run time are all areas of programming that require careful control of evaluation. Since Mathematica automatically evaluates arguments and return values of functions, building up a result without exposing intermediate stages of work to the evaluator requires subtle techniques that even seasoned Mathematica programmers sometimes find elusive. In this tutorial, I will demonstrate situations in which evaluation control is important, pointing out common pitfalls and providing useful tools and techniques along the way.
 |
 |
 |
 |
 |
 |

 |
 |
 |
 |
 |
 |
 replace, hold, wrapper, dummy symbols, Unevaluated
 |
 |
 |
 |
 |
 |
 http://library.wolfram.com/conferences/devconf99/villegas/UnevaluatedExpressions/index.html
 |
 |
 |
 |
 |
 |

| UnevaluatedExpressions.nb (254.5 KB) - Mathematica Notebook |
 |
 |
|
 |
 |
 |
 |
| | | |  | |
|