Calculate the last digits of Graham's Number
dc - 21 chars
[3z202>xO200^|]dsxxrp
This takes about a minute on my computer, and would take lots longer for values larger than 200. It doesn't output leading zeroes.
Here's a slightly longer but faster version (26 chars):
[3rAz^|dz205>x]dsxxAz6-^%p
3[3rAz^|dz202>x]dsxxAz3-^%p # or an extra character for a few less iterations
Haskell, 99
Performance not stellar, but it manages to compute 500 digits in a minute on my decade-old hardware.
f a b|b==0=1|odd b=mod(a*f a(b-1))m|0<1=f(mod(a^2)m)$div b 2
main=print$iterate(f 3)3!!500
m=10^500
(btw, I'd love to hear about its performance on more modern hardware)
Python - 62 59 55 chars
x=3
for i in range(500):x=pow(3,x,10**500)
print"0%d"%x
Takes around 12 seconds on my PC.
sh-3.1$ time python cg_graham.py
02425950695064738395657479136519351798334535362521430035401260267716226721604198
10652263169355188780388144831406525261687850955526460510711720009970929124954437
88874960628829117250630013036229349160802545946149457887142783235082924210209182
58967535604308699380168924988926809951016905591995119502788717830837018340236474
54888222216157322801013297450927344594504343300901096928025352751833289884461508
94042482650181938515625357963996189939679054966380032223487239670184851864390591
04575627262464195387
real 0m11.807s
user 0m0.000s
sys 0m0.015s
sh-3.1$