Here’s the difference between an expression and a script (from About expressions [link] in the documentation):
An expression is a little piece of software—much like a script—that evaluates to a single value for a single layer property at a specific point in time. Whereas scripts tell an application to do something, an expression says that a property is something.
Expressions are evaluated for every single frame that the layer is active, so they must return a value for all values of time (like a function in math).
In other words, expressions let you do things you could also do with keyframes; scripts let you do things you could otherwise do with the AE UI.
Walter Soyka
Principal & Designer at Keen Live
Motion Graphics, Widescreen Events, Presentation Design, and Consulting
RenderBreak Blog – What I’m thinking when my workstation’s thinking
Creative Cow Forum Host: Live & Stage Events