Maybe I could summarize my previous post by the following rules: * everywhere except in the list of equations of a model, evaluation should always be triggered, except otherwise specified (with a sym()-like operator) * in the list of equations of a model, evaluation should never be triggered, except otherwise specified (with an eval()-like operator) And I would add a 3rd rule: * when trying to evaluate a symbol, if it is not assigned, then trigger an error. This means that it is ok to use an unassigned symbol in the equations list of a model, but not outside (unless the sym() operator is used) -- Sébastien Villemot Researcher in Economics & Debian Maintainer http://www.dynare.org/sebastien Phone: +33-1-40-77-84-04 - GPG Key: 4096R/381A7594