Project

General

Profile

Actions

Feature #19734

closed

Let `Dir` methods be available to `File`

Added by sawa (Tsuyoshi Sawada) 11 months ago. Updated 11 months ago.

Status:
Rejected
Assignee:
-
Target version:
-
[ruby-core:113925]

Description

I propose to let Dir singleton methods be available to File in some way. Motivations are as follows.

When we want to do something with a file (for example File.read or File.write), we quite often want to achieve the home directory. If we are in the mode of thinking in the ream of File, we would likely come up with File.expand_path("~"). However, this is cumbersome, and actually, Dir.home is simpler. But my experience is that switching the mind to Dir when thinking about File require extra cognitive load.

Also, many methods defined in File work for both a file or a directory. When we are doing something with a directory, we have to stop and think whether the method we want to use is defined in File or in Dir. It is possible to do that, but that also requires extra cognitive load.

I thought things would become simpler if we do not need to switch between these two classes in mind, and keep using File. There are a few singleton methods that are defined on both File and Dir:

delete/unlink, empty?, exist?, new/open

For them, perhaps some modification can be made.

Actions

Also available in: Atom PDF

Like0
Like0Like0