[ruby-trunk - Bug #8739][Open] Range#last と#last(n)で挙動の統一がされていない

Issue #8739 has been reported by to_ueda (Tomoya Ueda).


Bug #8739: Range#last と#last(n)で挙動の統一がされていない

Author: to_ueda (Tomoya Ueda)
Status: Open
Priority: Normal
Assignee:
Category:
Target version:
ruby -v: ruby 2.1.0dev (2013-08-05) [x86_64-linux]
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN

Range#lastは終端を返しますが、#last(n)は最後の要素を返します。
引数の有無で挙動が異なるのは意図したものでしょうか?
意図したものであれば、返す値を終端か要素どちらかに挙動を統一出来ないでしょうか。

#終端が返る
(1…5).last => 5
#最後の要素が返る
(1…5).last(1) => [4]

Issue #8739 has been updated by matz (Yukihiro M.).

Status changed from Rejected to Closed

$B$$!"%j%S%8%g%s(B
42400$B$G:G8e$NMWAG$rJV$9(B($B7k2L$H$7$F5sF0$rB7$($kHs8_49$JJ}8~$N(B)$BJQ99$,9T$o$l$F$^$9$M!#(B

$B$3$l$r5!2q$K2~$a$F9M$($k$H!“=*C<$O!V(Bend$B!W%a%=%C%I$r;H$&$h$&$K$7$F!”!V(Blast$B!W$N5sF0$OB>$N(BEnumerable$B$HB7$($k$3$H$K$7$^$7$g$&!#(B
$BHs8_49$G$9$,!“$J$s$H$+$J$k!”$G$7$g$&!"B?J,!#(B

$BI8=`E:IU%i%$%V%i%j$K$“$C$?Hs8_49LdBj$O!”%j%S%8%g%s(B
42403$B!“(B42404$B!”(B42407$B$G=$@5$5$l$F$$$^$9!#(B

$B$A$g$C$H2!$7@Z$i$l$?46$8$G$9$,!“$^$”!“D9$$L$G8+$l$P$3$l$GNI$+$C$?$s$G$7$g$&!”$-$C$H!#(B

Matz.


Bug #8739: Range#last $B$H(B#last(n)$B$G5sF0$NE}0l$,$5$l$F$$$J$$(B

Author: to_ueda (Tomoya Ueda)
Status: Closed
Priority: Normal
Assignee: matz (Yukihiro M.)
Category:
Target version:
ruby -v: ruby 2.1.0dev (2013-08-05) [x86_64-linux]
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN

Range#last$B$O=*C<$rJV$7$^$9$,!“(B#last(n)$B$O:G8e$NMWAG$rJV$7$^$9!#(B
$B0z?t$NM-L5$G5sF0$,0[$J$k$N$O0U?^$7$?$b$N$G$7$g$&$+!)(B
$B0U?^$7$?$b$N$G$”$l$P!"JV$9CM$r=*C<$+MWAG$I$A$i$+$K5sF0$rE}0l=PMh$J$$$G$7$g$&$+!#(B

#$B=*C<$,JV$k(B
(1…5).last$B!!(B=> 5
#$B:G8e$NMWAG$,JV$k(B
(1…5).last(1)$B!!(B=> [4]

Issue #8739 has been updated by naruse (Yui NARUSE).

Status changed from Closed to Assigned
Assignee changed from matz (Yukihiro M.) to nobu (Nobuyoshi
Nakada)
Target version set to current: 2.1.0

$B;EMM$rJQ$($k$H$-$O(B NEWS $B$K=q$$$F2<$5$$!#(B
$B$“$H!”(Brdoc $B$b$A$c$s$HDI=>$5$;$F2<$5$$!#(B

Bug #8739: Range#last $B$H(B#last(n)$B$G5sF0$NE}0l$,$5$l$F$$$J$$(B

Author: to_ueda (Tomoya Ueda)
Status: Assigned
Priority: Normal
Assignee: nobu (Nobuyoshi N.)
Category:
Target version: current: 2.1.0
ruby -v: ruby 2.1.0dev (2013-08-05) [x86_64-linux]
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN

Range#last$B$O=*C<$rJV$7$^$9$,!“(B#last(n)$B$O:G8e$NMWAG$rJV$7$^$9!#(B
$B0z?t$NM-L5$G5sF0$,0[$J$k$N$O0U?^$7$?$b$N$G$7$g$&$+!)(B
$B0U?^$7$?$b$N$G$”$l$P!"JV$9CM$r=*C<$+MWAG$I$A$i$+$K5sF0$rE}0l=PMh$J$$$G$7$g$&$+!#(B

#$B=*C<$,JV$k(B
(1…5).last$B!!(B=> 5
#$B:G8e$NMWAG$,JV$k(B
(1…5).last(1)$B!!(B=> [4]

Issue #8739 has been updated by naruse (Yui NARUSE).

$B$J$s$+(Brubyspec$B$N$3$1J}$,$*$+$7$$$H;W$C$?$N$G$h$/8+$F$_$?$i!“(Brubyspec$B<+BN(B(=mspec)$B$,(B
Range#last $B$r(B ruby_version_is “1.9”…“1.9.3”
$B$H$+$NH=Dj$G;H$C$F$$$k$h$&$G!”(B
$B8+;v$KF’$s$@$h$&$G$9!#(B
http://c64b.rubyci.org/~chkbuild/ruby-trunk/log/20130806T090301Z.diff.html.gz

$B:GDc$G$b0\9TA<CVI,MW$8$c$J$$$G$9$+$M$'!#(B

Bug #8739: Range#last $B$H(B#last(n)$B$G5sF0$NE}0l$,$5$l$F$$$J$$(B

Author: to_ueda (Tomoya Ueda)
Status: Assigned
Priority: Normal
Assignee: nobu (Nobuyoshi N.)
Category:
Target version: current: 2.1.0
ruby -v: ruby 2.1.0dev (2013-08-05) [x86_64-linux]
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN

Range#last$B$O=*C<$rJV$7$^$9$,!“(B#last(n)$B$O:G8e$NMWAG$rJV$7$^$9!#(B
$B0z?t$NM-L5$G5sF0$,0[$J$k$N$O0U?^$7$?$b$N$G$7$g$&$+!)(B
$B0U?^$7$?$b$N$G$”$l$P!"JV$9CM$r=*C<$+MWAG$I$A$i$+$K5sF0$rE}0l=PMh$J$$$G$7$g$&$+!#(B

#$B=*C<$,JV$k(B
(1…5).last$B!!(B=> 5
#$B:G8e$NMWAG$,JV$k(B
(1…5).last(1)$B!!(B=> [4]

Issue #8739 has been updated by kosaki (Motohiro KOSAKI).

$B$@$l$+$,!"%.%c$C$H8@$C$?$i7/<gI?JQ%9$GBVEY$rJQ$($F(Brevert$B$9$Y$-$J$s$8$c$J$$$G$9$+$M$(!#(B


Bug #8739: Range#last $B$H(B#last(n)$B$G5sF0$NE}0l$,$5$l$F$$$J$$(B

Author: to_ueda (Tomoya Ueda)
Status: Assigned
Priority: Normal
Assignee: nobu (Nobuyoshi N.)
Category:
Target version: current: 2.1.0
ruby -v: ruby 2.1.0dev (2013-08-05) [x86_64-linux]
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN

Range#last$B$O=*C<$rJV$7$^$9$,!“(B#last(n)$B$O:G8e$NMWAG$rJV$7$^$9!#(B
$B0z?t$NM-L5$G5sF0$,0[$J$k$N$O0U?^$7$?$b$N$G$7$g$&$+!)(B
$B0U?^$7$?$b$N$G$”$l$P!"JV$9CM$r=*C<$+MWAG$I$A$i$+$K5sF0$rE}0l=PMh$J$$$G$7$g$&$+!#(B

#$B=*C<$,JV$k(B
(1…5).last$B!!(B=> 5
#$B:G8e$NMWAG$,JV$k(B
(1…5).last(1)$B!!(B=> [4]

Issue #8739 has been updated by naruse (Yui NARUSE).

Priority changed from Normal to High

kosaki (Motohiro KOSAKI) wrote:

$B$@$l$+$,!"%.%c$C$H8@$C$?$i7/<gI?JQ%9$GBVEY$rJQ$($F(Brevert$B$9$Y$-$J$s$8$c$J$$$G$9$+$M$(!#(B

$B$@$$$?$$!V$.$c$C!W$H$$$&$N$O%j%j!<%98e$J>e$K!“$@$$$?$$(Bblog$B$d(Btwitter$B$G$N6rCT$H$7$FO*=P$9$k$3$H$K$J$k$H$3$m!”(B
$BI8=`%i%$%V%i%j$G$N(B2$B7o$K2C$($F(Brubyspec
(mspec)$B$bF’$s$G$k$“$?$j!”$3$l$O$b$&M=9pL5$7$G$NJQ99$O%"%&%H$@$m$&$H;W$&$s$G$9$h!#(B
$B<FED$5$sB&$G$N8+2r$bJ9$-$^$9$+$M!#(B

Bug #8739: Range#last $B$H(B#last(n)$B$G5sF0$NE}0l$,$5$l$F$$$J$$(B

Author: to_ueda (Tomoya Ueda)
Status: Assigned
Priority: High
Assignee: nobu (Nobuyoshi N.)
Category:
Target version: current: 2.1.0
ruby -v: ruby 2.1.0dev (2013-08-05) [x86_64-linux]
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN

Range#last$B$O=*C<$rJV$7$^$9$,!“(B#last(n)$B$O:G8e$NMWAG$rJV$7$^$9!#(B
$B0z?t$NM-L5$G5sF0$,0[$J$k$N$O0U?^$7$?$b$N$G$7$g$&$+!)(B
$B0U?^$7$?$b$N$G$”$l$P!"JV$9CM$r=*C<$+MWAG$I$A$i$+$K5sF0$rE}0l=PMh$J$$$G$7$g$&$+!#(B

#$B=*C<$,JV$k(B
(1…5).last$B!!(B=> 5
#$B:G8e$NMWAG$,JV$k(B
(1…5).last(1)$B!!(B=> [4]

Issue #8739 has been updated by to_ueda (Tomoya Ueda).

$B%3%a%s%H$$$?$@$-$"$j$,$H$&$4$6$$$^$9!#(B

$B%j%S%8%g%s(B
42400$B$NJQ99$N$h$&$K$J$k$H!“D>46E*$G$&$l$7$$$H$O;W$$$^$7$?$,!”(B
$B!VHs8_49@-$rF3F~$9$k$@$1$N2ACM!W$r$"$^$jG0F,$KCV$$$F$$$J$$>e$G$NH/8@$G$7$?!#(B

$BB7$($F$[$7$$$H$$$&0U8+$OJQ$o$j$^$;$s$,!“(B
$BHs8_49$N1F6A$rL$K$7!”$=$l0J>e$N%a%j%C%H$r;d$K$O@bL@$9$k$3$H$b$G$-$^$;$s!#(B

$B$4H=CG$*4j$$CW$7$^$9!#(B

Bug #8739: Range#last $B$H(B#last(n)$B$G5sF0$NE}0l$,$5$l$F$$$J$$(B

Author: to_ueda (Tomoya Ueda)
Status: Assigned
Priority: High
Assignee: nobu (Nobuyoshi N.)
Category:
Target version: current: 2.1.0
ruby -v: ruby 2.1.0dev (2013-08-05) [x86_64-linux]
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN

Range#last$B$O=*C<$rJV$7$^$9$,!“(B#last(n)$B$O:G8e$NMWAG$rJV$7$^$9!#(B
$B0z?t$NM-L5$G5sF0$,0[$J$k$N$O0U?^$7$?$b$N$G$7$g$&$+!)(B
$B0U?^$7$?$b$N$G$”$l$P!"JV$9CM$r=*C<$+MWAG$I$A$i$+$K5sF0$rE}0l=PMh$J$$$G$7$g$&$+!#(B

#$B=*C<$,JV$k(B
(1…5).last$B!!(B=> 5
#$B:G8e$NMWAG$,JV$k(B
(1…5).last(1)$B!!(B=> [4]

Issue #8739 has been updated by hsbt (Hiroshi SHIBATA).

$B8F$P$l$?$N$GJV;v$r$9$k$H!“(B2.1.0 $B$G(B warning $B=P$7$F(B 2.1.1
$B$GJQ$($k$+!”(B2.0.x $B$G(B warning $B=P$7$F(B 2.1
$B$GJQ$($k$H$$$&$H$3$m$,BEEv$H;W$$$^$9$,!"8e<T$O$b$&4|8B@Z$l$J5$$,$7$^$9!#(B

Bug #8739: Range#last $B$H(B#last(n)$B$G5sF0$NE}0l$,$5$l$F$$$J$$(B

Author: to_ueda (Tomoya Ueda)
Status: Closed
Priority: High
Assignee: nobu (Nobuyoshi N.)
Category:
Target version: current: 2.1.0
ruby -v: ruby 2.1.0dev (2013-08-05) [x86_64-linux]
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN

Range#last$B$O=*C<$rJV$7$^$9$,!“(B#last(n)$B$O:G8e$NMWAG$rJV$7$^$9!#(B
$B0z?t$NM-L5$G5sF0$,0[$J$k$N$O0U?^$7$?$b$N$G$7$g$&$+!)(B
$B0U?^$7$?$b$N$G$”$l$P!"JV$9CM$r=*C<$+MWAG$I$A$i$+$K5sF0$rE}0l=PMh$J$$$G$7$g$&$+!#(B

#$B=*C<$,JV$k(B
(1…5).last$B!!(B=> 5
#$B:G8e$NMWAG$,JV$k(B
(1…5).last(1)$B!!(B=> [4]

Issue #8739 has been updated by nobu (Nobuyoshi N.).

Reject$B$5$l$F$$$k$N5$$E$+$:!“$&$C$+$jJQ99$7$F$7$^$$$^$7$?$,!”(Brevert$B$7$^$9$+$M$'!#(B
$B$?$@$7!“(Bnet/http/header.rb$B$N$h$&$K!”(Blast(1)[0]$B$HF1$8%b%N$,M_$7$$%1!<%9$O$"$k$N$G$O$J$$$+$H;W$$$^$9!#(B

rubyspect$B$N7o$O!"(B(“1.9”…“1.9.3”).to_a$B$r;H$&$N$O$^$:$$$C$F$3$H$G$9$M$'!#(B

$B$d$C$Q$j(Brevert$B$+$J!#(B

Bug #8739: Range#last $B$H(B#last(n)$B$G5sF0$NE}0l$,$5$l$F$$$J$$(B

Author: to_ueda (Tomoya Ueda)
Status: Assigned
Priority: High
Assignee: nobu (Nobuyoshi N.)
Category:
Target version: current: 2.1.0
ruby -v: ruby 2.1.0dev (2013-08-05) [x86_64-linux]
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN

Range#last$B$O=*C<$rJV$7$^$9$,!“(B#last(n)$B$O:G8e$NMWAG$rJV$7$^$9!#(B
$B0z?t$NM-L5$G5sF0$,0[$J$k$N$O0U?^$7$?$b$N$G$7$g$&$+!)(B
$B0U?^$7$?$b$N$G$”$l$P!"JV$9CM$r=*C<$+MWAG$I$A$i$+$K5sF0$rE}0l=PMh$J$$$G$7$g$&$+!#(B

#$B=*C<$,JV$k(B
(1…5).last$B!!(B=> 5
#$B:G8e$NMWAG$,JV$k(B
(1…5).last(1)$B!!(B=> [4]