Daniel Schierbeck wrote:
>   List inject := method(n, blk, self foreach(v, n = blk call(n, v)))

Found out what the problem was -- the 'call' message to 'blk' messed 
things up. This works:

   List inject := method(n, blk, self foreach(v, n = blk(n, v)))
   list(1, 2, 3)  => 6

Cheers,
Daniel