Here's my solution...
No need for seperate functions for numbers or strings, as they will all get converted to a string when passed to the function.
Function FormatNumber:String(num:String) Local i:Int=num.Length-1,j:Int=0,out:String Repeat out=Chr(num[i])+out i:-1 j:+1 If j=3 And i>=0 Then out=","+out j=0 EndIf Until i<0 Return out EndFunction Local num:Int=1 For Local i:Int=1 Until 11 Print FormatNumber(num) num:*10 Next
No need for seperate functions for numbers or strings, as they will all get converted to a string when passed to the function.