     {
         { 16 [ float>hex ] }
         [ drop float>decimal ]
-    } case ;
+    } case ; inline
 
 PRIVATE>
 
 : float>string ( n -- str )
-    10 float>base ;
+    10 float>base ; inline
 
 M: float >base
     {

PRIVATE>

: string>float ( str -- n/f )
    10 base>float ;

: base> ( str radix -- n/f )
    over numeric-looking? [

    {
        { 16 [ hex>float ] }
        [ drop dec>float ]
    } case ; inline

: number-char? ( char -- ? )
    "0123456789ABCDEFabcdef." member? ; inline

: numeric-looking? ( str -- ? )
    "-" ?head drop
