There is "compcache" if you're one of the people nervous about possibly wrecking their flash card -
http://code.google.com/p/compcache/Like how swap swaps unused pages to disk/wherever, compcache compresses unused pages.
For people not worried about SSD wear and tear, I think a swapfile is to be preferred over a swap partition. Historically, a swap file would be slower because it would have to go through the filesystem, but these days in Linux using a swapfile finds out what blocks to use at swapon, then writes to them directly, no filesystem middleman (so it's the same speed as a swap partition for access, it just takes longer at swapon).
A swap file is better than a swap partition because when you delete it, you instantly get the space back - you don't have to backup, unmount, resize, remount your whole filesystem. And also, a swap file carries the risk of becoming fragmented, impossible for a swap partition, but on solid state storage that is not an issue.
So in summary, on embedded Linux a swap file is always preferable over a swap partition, but if I were you I would just go for compcache (or similar technology).