This module depends on the acceptance of PortsCowan or something like it, as it uses the framework of that proposal.
(directory? filename)
Returns #t if filename is the name of a directory. Filename is a string or an implementation-dependent object.
(open-directory filename)
Filename can be a string or a settings list as described in PortsCowan. In addition to the keys path and encoding specified there, the key hidden can have the values #f (no hidden files), #t (all files), and dots (all files except . and ..). On Posix systems, hidden files have names beginning with .; on Windows, hidden files are named ., .., or have the hidden file attribute.
The returned value is an input port, but it is neither a binary port nor a character port, so the only procedure callable on it is read, which returns the next available filename as a string (or, when necessary, an implementation-dependent object). Filenames are returned in arbitrary order. Directory ports are a disjoint type.
(directory-port? obj)
Returns #t if obj is a directory port.