 
 : get+increment ( state -- char/f )
     [ current ] [ next drop ] bi ; inline
-
-: state-parse ( sequence quot -- )
-    [ <state-parser> ] dip call ; inline
 
 :: skip-until ( state quot: ( obj -- ? ) -- )
     state current [

: current ( state -- char/f )
    [ n>> ] keep state-parser-nth ; inline

: peek-next ( state -- char/f )
    [ n>> 1 + ] keep state-parser-nth ; inline


        [ skip-until ]
        [ drop [ n>> ] [ sequence>> ] bi ] 2tri subseq
    ] if ; inline

: take-while ( state quot: ( obj -- ? ) -- sequence/f )
    [ not ] compose take-until ; inline

:: take-until-sequence ( state-parser sequence -- sequence' )
    sequence length <growing-circular> :> growing
