     {
         { [ over empty? ] [ append-path-empty ] }
         { [ dup empty? ] [ drop ] }
-        { [ over right-trim-separators "." = ] [ nip ] }
+        { [ over trim-right-separators "." = ] [ nip ] }
         { [ dup absolute-path? ] [ nip ] }
-        { [ dup head.? ] [ rest left-trim-separators append-path ] }
+        { [ dup head.? ] [ rest trim-left-separators append-path ] }
         { [ dup head..? ] [
-            2 tail left-trim-separators
+            2 tail trim-left-separators
             >r parent-directory r> append-path
         ] }
         { [ over absolute-path? over first path-separator? and ] [
             >r 2 head r> append
         ] }
         [
-            >r right-trim-separators "/" r>
-            left-trim-separators 3append
+            >r trim-right-separators "/" r>
+            trim-left-separators 3append
         ]
     } cond ;
 

HOOK: make-directory io-backend ( path -- )

: make-directories ( path -- )
    normalize-path right-trim-separators {
        { [ dup "." = ] [ ] }
        { [ dup root-directory? ] [ ] }
        { [ dup empty? ] [ ] }


: parent-directory ( path -- parent )
    dup root-directory? [
        trim-right-separators
        dup last-path-separator [
            1+ cut
        ] [
