- (incf decimal-count))
- ((and (eql char +char-code-period+) decimalp)
- (setq decimalp t))
- ((or (eql char +char-code-e+) ;; E is for exponent
- (eql char +char-code-upper-e+))
- (multiple-value-bind (num idx)
- (parse-integer string :start (1+ index) :end end
- :radix radix :junk-allowed junk-allowed)
- (setq exponent (or num 0)
- index idx)
- (when (= index end) (return nil))))
+ (incf decimal-count)
+ (setq char (read-byte socket)))
+ ((and (= char +char-code-period+))
+ (setq decimalp t)
+ (setq char (read-byte socket)))
+ ((or (= char +char-code-lower-e+) ;; E is for exponent
+ (= char +char-code-upper-e+))
+ (setq exponent (read-integer-from-socket socket (- length i)))
+ (format t "~&exp: ~a" exponent)
+ (setq exponent (or exponent 0))
+ (setq i length))
+ (t
+ (break "Unexpected value"))