Substitution variables are used to reference information that changes frequently; environment variables are used as placeholders for user-specific system settings. See:
Using Substitution Variables in Calculation Scripts
Using Environment Variables in Calculation Scripts and Formulas