add commas to Numbers without String manipulation
You weren't very specific on the output format...

Haskell, 56

reverse.takeWhile(&gt;0).map(`mod`1000).iterate(`div`1000)


example:

GHCi&gt; reverse.takeWhile(&gt;0).map(`mod`1000).iterate(`div`1000)$93842390862398
[93,842,390,862,398]