if (partB == null && partExp == null) {// integer/long
if (partA.startsWith("+"))
partA = partA.substring(1);
long outcome = Long.parseLong(partA);
if (outcome > Integer.MAX_VALUE || outcome < Integer.MIN_VALUE)
result = new OtpErlangLong(outcome);
else
result = new OtpErlangInt((int) outcome);
} else {// floating - point number.
String textToParse = partA + "."
+ (partB == null ? "0" : partB)