[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

*To*: Slug@WARBUCKS.AI.SRI.COM*Subject*: Parsing numbers*From*: David Hall <hall@UNIXB.CTC.FMC.COM>*Date*: Fri, 29 Sep 89 12:13:53 EDT

I was trying to read some numbers on a MacIvory (Genera 7.4) and noticed some peculiar behavior. I got the same results on a 3640 running 7.2. (In the following examples the LET form was evaled, the number after ON was entered and the thing after the -> was returned. (TYPE-OF *) yielded the thing after the ,) First a binary example. This is what one would expect: (let ((*read-base* 2)) (read)) on 1111 -> 15 , FIXNUM I guess this next example is OK in a perverse way, i.e. it would be correct if 9 were a binary digit with value 8 greater than 1. (let ((*read-base* 2)) (read)) on 1191 -> 31 , FIXNUM Now a hexadecimal example. Again, this is the expected result: (let ((*read-base* 16)) (read)) on 123 -> 291 , FIXNUM But this next one is wrong. "A" is a perfectly good hexadecimal digit and should not be interpreted as an alphabetic. (let ((*read-base* 16)) (read)) on 1A3 -> 1A3 , SYMBOL I expected the second example to result in a symbol named |1191| and the fourth to result in a number with decimal value 419. Any relevant advice on how number parsing does or should work? Thanks, --David Hall. Hall@ctc.fmc.com FMC Corporation 1205 Coleman Avenue Santa Clara, CA 95052

**Follow-Ups**:**Parsing numbers***From:*Scott McKay <SWM%sapsucker.scrc.symbolics.com@RELAY.CS.NET>

**Parsing numbers***From:*Richard Lamson <rsl%max-fleischer.ila-sf.dialnet.symbolics.com@RELAY.CS.NET>

- Prev by Date:
**epsilon fix/customization** - Next by Date:
**Parsing numbers** - Previous by thread:
**hierarchical debugging** - Next by thread:
**Parsing numbers** - Index(es):