 
 ERROR: integer-length-expected obj ;
 
+#! The check-length call forces partial dispatch
 : check-length ( n -- n )
     dup integer? [ integer-length-expected ] unless ; inline
 

    [ swap length + ] dip lengthen ; inline

: copy-unsafe ( src i dst -- )
    #! The check-length call forces partial dispatch
    [ [ length check-length 0 ] keep ] 2dip <copy> (copy) drop ; inline

: subseq-unsafe ( from to seq -- subseq )


: (3each) ( seq1 seq2 seq3 quot -- n quot' )
    [
        [ [ length ] tri@ min min check-length ]
        [ [ 3nth-unsafe ] 3curry ] 3bi
    ] dip compose ; inline

