The below returns "2147483647"...

 Code:
? Val("11111111111")

get $


Is this a bug, or is there some kind of programming logic that I'm not recognizing that justifies that result?