Serial = memory hog?

I don’t know exactly how the arduino build-system works, but it seems that you always have WProgram.h which includes HardwareSerial.h. To make any use of that, HarwareSerial.cpp would have to be linked in, which declares Serial, which has a 128 bytes ring_buffer for serial input.
With some more stray bytes and ints in the Serial object, it ought to use up at least 144 bytes. That’s quite a chunk out of only 2kb SRAM, and some cpus have even less ram!
Is there a way to get those bytes back for sketches that don’t need Serial?

Is there a way to get those bytes back for sketches that don't need Serial?

Yes. Don't reference Serial in your Sketch.

(The arduino IDE passes switches to the linker that cause functions (and data) not actually referenced to be omitted from the final binary, even though they are in the .o files passed to the linker. For example, compiling blink.pde with Arduino18 gives you:

hardware/tools/avr/bin/avr-size *.elf
   text    data     bss     dec     hex filename
    894       2       9     905     389 Blink.cpp.elf

(no serial buffers!)

ok! (feeling slightly less claustophobic now 8-) )