In the absence of a full-fledged tutorial, I am teaching myself to program in the Factor language by writing a bunch of functions that I will eventually use in command-line scripts.One common operation I like to perform is to change the case of names of files contained in a given directory to uppercase or lowercase.  I wrote the following code to perform this operation in Factor:USING: fry kernel io.directories sequences unicode.case ;IN: util.directories: move-each-directory-file>lower ( pathname -- )    [ dup >lower ] move-each-directory-file ;: move-each-directory-file>upper ( pathname -- )    [ dup >upper ] move-each-directory-file ;: each-directory-file ( pathname quot -- )    '[ [ @ ] each ] with-directory-files ; inline: move-each-directory-file ( pathname quot -- )    '[ @ move-file ] each-directory-file ; inlineI have tried to factor as much code as possible into a reusable vocabulary.  I look forward to suggestions for improvement.
Factor script to change case of all filenames in a directory
file system;factor lang