That's why they're free.
iOS is too locked down to do development or anything else particularly interesting on it. Android can indeed be compiled on Android, but I've never done it and I suspect it would be an exercise in frustration. On the plus side, Eclipse and the SDKs are all cross-platform so they'll run on whatever hardware you do have. The MS Surface Pro is x86 so you can do development on it, but the Surface RT is a bad joke so don't waste time even thinking about it (or WinRT for that matter).
Despite the hype surrounding them, tablets are not a one size fits all solution and the form factor and usage flow simply don't lend themselves to tasks like coding.