> joe_dir.entries.each do |entry|
>   if entry.directory?
>     print "dir:  "
>   else
>     print "file: "
>   end
> 
>   print "filename: #{entry.name} (full path: #{entry.path})" end
> 
> 
> Dir#entries would not return an array of strings but an array 
> of objects, which you could query for information such as 
> name, path, date, permissions etc. in a much more 
> Ruby-oriented way than with File#method(filename).

Agreed, you could also add

entry.open(permString)

Then you would open the interface up for other applications than directories. I'm thinking zip files and tar archives and the like.

Thomas