Project

General

Profile

Misc #16114

Naming of "beginless range"

Added by pwim (Paul McMahon) 3 months ago. Updated about 1 month ago.

Status:
Open
Priority:
Normal
Assignee:
-
[ruby-core:94465]

Description

#14799 introduces a "beginless range" to complement the already existing "endless range". However, "beginless" isn't an existing word in English. Since the term for something without a beginning is "beginingless", I'd propose renaming "beginless range" to "beginningless range".


Related issues

Related to Ruby master - Feature #15864: Proposal: Add methods to determine if it is an infinite rangeOpenActions

History

Updated by mrkn (Kenta Murata) 3 months ago

Other candidates from mathematics:

  • a range bounded below
  • lower-unbounded range
  • left-unbounded range

If we use "unbounded" for the minimum value of a range, we should rephrase "endless" with the following candidates:

  • a range bounded above
  • upper-unbounded range
  • right-unbounded range

Updated by mame (Yusuke Endoh) 3 months ago

I know that it is an awkward word, but it came from Range#begin and Range#end. IMO, you can call it as you like.

#3

Updated by mame (Yusuke Endoh) 3 months ago

  • Related to Feature #15864: Proposal: Add methods to determine if it is an infinite range added

Updated by duerst (Martin Dürst) 3 months ago

mrkn (Kenta Murata) wrote:

Other candidates from mathematics:

  • a range bounded below

Shouldn't this be "a range not bounded below"?

  • lower-unbounded range
  • left-unbounded range

If we use "unbounded" for the minimum value of a range, we should rephrase "endless" with the following candidates:

  • a range bounded above

Same thing here.

Updated by mrkn (Kenta Murata) 3 months ago

duerst (Martin Dürst) wrote:

mrkn (Kenta Murata) wrote:

Other candidates from mathematics:

  • a range bounded below

Shouldn't this be "a range not bounded below"?

Oops! The correct candidates are "a range unbounded below" and "a range unbounded above".

Thanks.

Updated by shevegen (Robert A. Heiler) 3 months ago

This shows that there are only two real problems in computer science:

  • Giving things proper names
  • Documenting code after the code has been written
  • Off by one errors

:P

From the candidates, I somewhat like mrkn's suggestion here:

lower-unbounded range

I am not sure if it is an ideal candidate, but to me it conveys
a similar meaning as "beginless", in that it refers to the
"lower" area of a range - well, the part where it all begins. :P

(You can also use left/right, but I think if we only compare
lower/upper to left/right, to me lower/upper makes a bit more
sense than left/right, within this context.)

Note that I find "beginningless" to be a very clumsy word as well.
Obviously that word exists (example: https://en.wiktionary.org/wiki/beginningless)
but I find it ... awkward.

I do not have any real preference either way so, to be completely honest,
I am with mame here - I don't think it is that important, at the least not
that I would dwell that much thought on it. Thinking about good names is
often quite difficult - just look at HashWithIndifferentAccess.

Updated by inopinatus (Joshua GOODALL) about 2 months ago

I hope this discussion leads to Ruby having Ranges congruent to all the mathematical intervals.

Today we have right-unbounded ranges, and left-unbounded ranges, and right-closed ranges, and left-closed ranges, and right-open ranges -- but no left-open ranges.

This is strange to me. It is like having the <, <=, >= operators, and forgetting >.

I think "beginningless" might be cumbersome. I would smile if the term "bottomless" was adopted.

#8

Updated by jeremyevans0 (Jeremy Evans) about 1 month ago

  • Backport deleted (2.5: UNKNOWN, 2.6: UNKNOWN)
  • Tracker changed from Bug to Misc

Also available in: Atom PDF