 TUPLE: number-parse
     { str read-only }
     { length fixnum read-only }
-    { radix fixnum read-only } ;
+    { radix fixnum } ;
 
 : <number-parse> ( str radix -- i number-parse n )
     [ 0 ] 2dip [ dup length ] dip number-parse boa 0 ; inline

    { fixnum number-parse integer fixnum } declare
    digit-in-radix [ [ @pos-digit-or-punc ] add-digit ] [ @abort ] if ;

: (->radix) ( number-parse radix -- number-parse' )
    [ [ str>> ] [ length>> ] bi ] dip number-parse boa ; inline

: ->radix ( i number-parse n quot radix -- i number-parse n quot )
    [ (->radix) ] curry 2dip ; inline

: with-radix-char ( i number-parse n radix-quot nonradix-quot -- n/f )
    [

    -rot 0 ; inline

: @split-exponent ( i number-parse n -- n i number-parse' n' )
    -rot 10 >>radix 0 ; inline

: <float-parse> ( i number-parse n -- float-parse i number-parse n )
     [ drop nip radix>> 0 f float-parse boa ] 3keep ; inline
