user1544: At BlockExplorer I can see that (edit: some) generation transactions use a pubkey in the script (<key> OP_CHECKSIG), while ordinary transactions use address/hash (OP_DUP OP_HASH160 <hash> OP_EQUALVERIFY OP_CHECKSIG). Why don't generation transactions use hash as well?

user403: Pubkey transactions use a little less space in the block chain overall (if no pruning is used), so you might as well use them when you can.
I think that Satoshi's main reasoning was as follows, though:
Satoshi originally expected that most transactions would be pubkey transactions: the sender would contact the recipient directly and retrieve a public key to send funds to (the protocol has commands for getting this info from recipients, but it's almost never used nowadays). Bitcoin addresses were just a "hack" useful for sending BTC to offline recipients. You know your own public key for use in generation transactions, so addresses aren't necessary and Satoshi avoided using the "hack".

1544: <p>At BlockExplorer I can see that (<em>edit</em>: some) generation transactions use a pubkey in the script (<code>&lt;key&gt; OP_CHECKSIG</code>), while ordinary transactions use address/hash (<code>OP_DUP OP_HASH160 &lt;hash&gt; OP_EQUALVERIFY OP_CHECKSIG</code>). <strong>Why don't generation transactions use hash as well</strong>?</p>
 403: <p>Pubkey transactions use a little less space in the block chain overall (if no pruning is used), so you might as well use them when you can.</p>

<p>I think that Satoshi's main reasoning was as follows, though:</p>

<p>Satoshi originally expected that most transactions would be pubkey transactions: the sender would contact the recipient directly and retrieve a public key to send funds to (the protocol has commands for getting this info from recipients, but it's almost never used nowadays). Bitcoin addresses were just a "hack" useful for sending BTC to offline recipients. You know your own public key for use in generation transactions, so addresses aren't necessary and Satoshi avoided using the "hack".</p>
