I/O

readLines: Read a file into a list of lines and close it
[h]: file handle or name [io.input ()]
returns
l: list of lines

writeLine: Write values adding a newline after each
[h]: file handle [io.output ()]
...: values to write (as for write)

splitdir: split a directory path into components
Empty components are retained: the root directory becomes {"", ""}.
The same as Perl's File::Spec::splitdir
path: path
returns
@param: path1, ..., pathn: path components

catfile: concatenate directories into a path
The same as Perl's File::Spec::catfile
@param: path1, ..., pathn: path components
returns
path: path

catdir: concatenate directories into a path
The same as Perl's File::Spec::catdir
@param: path1, ..., pathn: path components
returns
path: path

shell: Perform a shell command and return its output
c: command
returns
o: output, or nil if error

processFiles: Process files specified on the command-line
If no files given, process io.stdin; in list of files, "-" means
io.stdin
f: function to process files with
name: the name of the file being read
i: the number of the argument