boolean REAL_token_p_old(String str)
  {
    String DECIMALchars  = ".";
    String INTchars      = "0123456789";

    int   decimalPos;
    int   length = str.length();
    int   index  = 0;

    if ((index < length) && ((str.charAt(index) == '-') || (str.charAt(index) == '+')))
      index++;

    if (index == length)   // Don't accept a single '-' or '+'
      return false;

    decimalPos = str.indexOf(DECIMALchars);     /* Check for decimal.  If none, not a real number. */
    if (decimalPos < 0)
      return(false);

    if (SymbolTools.firstCharNotInSet(index, str, INTchars) != decimalPos)
      return(false);

    if (decimalPos == str.length() - 1)
      return(true);         /* Decimal point followed by no digits is legal in LISP. */

    /* Check decimal digits. */
    index = decimalPos + 1;
    
    return(SymbolTools.firstCharNotInSet(index, str, INTchars) == length);
  }