*Taxonomy of Learning Domains*to teachers. If I had to pick the one most important statement in the taxonomy it would be this;

*the ability to paraphrase is a test of comprehension*. In other words, the more ways I can state a concept (paraphrase) the better I understand (comprehend) the concept.

For example, consider the

*Distance Formula*from analytic geometry.

Is the ability to use the above formula in a Scratch program that computes the

*distance*between an ant and the mouse-pointer a*test*of the programmer's*comprehension*of the formula? That is, the Scratch program is a*paraphrase*of the*distance**formula*. I've answered that question in the affirmative*because*I know how to express the formula in code that Scratch understands.
Watch this short video that will hopefully convince you that the project is truly a paraphrase of the distance formula. As the mouse-pointer is moved, the distance between it and the ant is continuously updated.

The

*Ant Chases the Mouse-pointer*project can be viewed and downloaded at
http://scratch.mit.edu/projects/16266075/

Here is a second example. This Scratch project is an effort to dynamically 'explain' the

*angle*concept*.*The project is*dynamic*because it actually constructs the requested angle.
This project can also be viewed and downloaded at the following link.

http://scratch.mit.edu/projects/16793255/
Now a third and final example. This project is also dynamic in that it constructs the perpendicular to a point chosen at random on a line segment. Watch this short video.

Click on this link to view or download the Perpendicular project.

http://scratch.mit.edu/projects/20186064/
What do you think? Is programming (coding) a higher-level cognitive process than just

*memorizing*a definition? As you can probably guess, I answered that question for myself a long time ago and I want learners, of all ages, to share the joy I experience when I successfully code a program.