I would explain this differently.  You can have expressions - which are evaluated to yield a values, or actions, which have a particular effect - possibly evaluating other actions and expressions in the process.  Either of them may be used inside a definition or as a result.  If an expression is used as a result it is implicitly converted into an action to output the value of that result.

Probably the distinction should be between results and definitions rather than actions and definitions (especially since a definition can e an action.)  

You could alternatively talk of two types of expressions - value expressions and action expressions, rather than expressions and actions.  I suspect it is easier to underderstand a distinction between expressions and actions though.