Please add alias "starts_with?" to class String
|ruby -v:||all||Backport:||1.9.3: UNKNOWN, 2.0.0: UNKNOWN|
We can do these:
FileUtils.touch 'test' # => ["test"]
File.exist? 'test' # => true
File.exists? 'test' # => true
'test'.start_with? 't' # => true
However, we can not use .starts_with?
'test'.starts_with? 't' NoMethodError: undefined method `starts_with?' for "test":String
I propose that, for proper english, and consistency with the duality of File.exist? and File.exists?
to also add alias starts_with? so that we can use proper english.
The proper english way to query such a question would be:
"Does the word abc start with an a?"
and in short form as factual, affirmative statement:
"abc starts with a."
whereas this here would be not proper english:
"abc start with a."
file.c: warn File.exists?
- file.c (rb_file_exists_p): warn deprecated name. [Bug #9041]
#2 Updated by Yui NARUSE 5 months ago
- Status changed from Open to Rejected
shevegen (markus heiler) wrote:
I forgot to add - I was told that the reason for this is that we should use the 2nd person, as in:
"Word, do you start with character a?"
This is fine for me, however had in that case, either File.exist? or File.exists? should be removed.
Yes, File.exists? should be removed for consistency.
But the removing breaks compatibility, and its benefit is less than its cost to fix.
So we keep it.
we sometimes remove old API to add new better API.¶
but this is not the case.¶
#3 Updated by Boris Stitnicky 5 months ago
@naruse: Thanks for responding and explaining. Yet, 3rd person forms
#starts_with?, #ends_with?, #exists? etc. seem to be preferred in other
@shevegen: As you probably know, ActiveSupport provides those aliases: