Very interesting question! I'm going to try and wing it using my knowledge of Geometric Algebra.
pmsrw3's observations from myspace look an awful lot like how you make rotors out of bivectors. That's the approach I'm going to take.
First, though: If you want to understand the geometric "intuition" behind the Clifford Algebra, an excellent resource is the first handout:
http://www.mrao.cam.ac.uk/~clifford/ptIIIcourse/handouts/hout01.ps.gz
(note that it is a gzipped postscript file), found from this page:
http://www.mrao.cam.ac.uk/~clifford/ptIIIcourse/
I find the first few chapters make for breezy, engaging reading. If you're impatient, section 2.4 talks about reflections, and section 2.5 builds on that to make rotations.
By the way: the above link is essentially identical to the first few chapters of the excellent "Geometric Algebra for Physicists" by Doran and Lasenby. If you can find that at your library, it's always nice to read from an actual, physical book. :)
Now: about those rotation matrices!
The essence of the above reading is that we don't
need rotation matrices; it is conceptually simpler to compute rotations using "rotors". As pmsrw3 pointed out, rotations are parameterized in terms of
angles and
planes. A rotor is simply the combination of the angle, \theta, and the unit bivector B which represents the plane.(1) To rotate a vector x into a vector \bar{x}, we apply the double-sided transformation law:
\bar{x} = e^{-B\theta/2}xe^{B\theta/2}
This (coordinate-free!) expression tells us everything we could want to know about the rotation. In particular, we can get the rotation matrix from it. The strategy is to pick a particular basis, \gamma_i, i \in \{1 \ldots n \}, so that
x = x_i \gamma_i
For simplicity, assume the \{\gamma_i\} are orthonormal. Define our rotation matrix R_{ij} by its action on the components of a vector:
\bar{x}_i = R_{ij} x_j
Naturally, this is true for any x. In particular, when x is a basis vector, we find that the components of \bar{(e_j)} are simply the entries in the jth column of R_{ij}.
This is how you could compute the entries using Clifford Algebra: rotate the basis vectors one at a time, and take the components relative to the basis. Explicitly:
R_{ij} = \gamma_i \cdot (e^{-B\theta/2}\gamma_j e^{B\theta/2})
I think the hard part would be actually computing the exponentiated bivectors. Especially if you're interested in something like SO(8)! The exponential would have one scalar term, 28 bivector terms, 70 quadvector terms, 28 hexvector terms, and one pseudoscalar term.
But my main point was to try to make the conceptual connection. Hope it helped.
(1) Technically, in 4 or more dimensions, a bivector might not represent a
single plane in the most general case. That's because we can have multiple planes which are completely independent, in the sense of having no lines in common. Rotations in the e_1e_2 plane are independent of rotations in the e_3e_4 plane, and commute with them.