[#69892] [Ruby trunk - Feature #11339] [Open] [PATCH] io.c: avoid kwarg parsing in C API — normalperson@...
Issue #11339 has been reported by Eric Wong.
8 messages
2015/07/07
[#69983] Re: [Ruby trunk - Feature #11339] [Open] [PATCH] io.c: avoid kwarg parsing in C API
— Eric Wong <normalperson@...>
2015/07/15
normalperson@yhbt.net wrote:
[#69990] Re: [Ruby trunk - Feature #11339] [Open] [PATCH] io.c: avoid kwarg parsing in C API
— SASADA Koichi <ko1@...>
2015/07/16
On 2015/07/16 4:41, Eric Wong wrote:
[#69995] Re: [Ruby trunk - Feature #11339] [Open] [PATCH] io.c: avoid kwarg parsing in C API
— Eric Wong <normalperson@...>
2015/07/16
SASADA Koichi <ko1@atdot.net> wrote:
[#69984] $SAFE inside an Array — Bertram Scharpf <lists@...>
Hi,
4 messages
2015/07/15
[#70001] [Ruby trunk - Bug #11336] [Open] TestProcess#test_exec_fd_3_redirect failed on Solaris 10 — ngotogenome@...
Issue #11336 has been updated by Naohisa Goto.
4 messages
2015/07/16
[#70005] Re: [Ruby trunk - Bug #11336] [Open] TestProcess#test_exec_fd_3_redirect failed on Solaris 10
— Eric Wong <normalperson@...>
2015/07/16
Sorry, but I think rb_divert_reserved_fd seems a racy fix. I think the
[#70011] [Ruby trunk - Bug #11362] [Open] [PATCH] ensure Process.kill(:STOP, $$) is resumable — normalperson@...
Issue #11362 has been reported by Eric Wong.
3 messages
2015/07/17
[#70016] [Ruby trunk - Bug #11364] [Open] Use smaller buffer for sendmsg — merch-redmine@...
Issue #11364 has been reported by Jeremy Evans.
8 messages
2015/07/17
[#70052] Re: [Ruby trunk - Bug #11364] [Open] Use smaller buffer for sendmsg
— Eric Wong <normalperson@...>
2015/07/20
merch-redmine@jeremyevans.net wrote:
[#70055] Re: [Ruby trunk - Bug #11364] [Open] Use smaller buffer for sendmsg
— Jeremy Evans <code@...>
2015/07/20
On 07/20 10:46, Eric Wong wrote:
[#70056] Re: [Ruby trunk - Bug #11364] [Open] Use smaller buffer for sendmsg
— Eric Wong <normalperson@...>
2015/07/21
Jeremy Evans <code@jeremyevans.net> wrote:
[#70103] [Ruby trunk - Feature #11375] Decreased Object Allocation in Pathname.rb — richard.schneeman@...
Issue #11375 has been updated by Richard Schneeman.
3 messages
2015/07/23
[#70156] [Ruby trunk - Bug #11396] Bad performance in ruby >= 2.2 for Hash with many symbol keys — dunric29a@...
Issue #11396 has been updated by David Unric.
3 messages
2015/07/28
[ruby-core:69837] [Ruby trunk - Feature #11323] Documentation update on how uniq works / guarantee of order
From:
0x0dea+redmine@...
Date:
2015-07-02 03:34:27 UTC
List:
ruby-core #69837
Issue #11323 has been updated by D.E. Akers.
`Array#uniq` is implemented using a hash table; since hashes in Ruby preserve insertion order, so too does `Array#uniq`. The following simplified translation to Ruby should help clarify what's going on in `rb_ary_uniq()`:
``` ruby
class Array
def uniq
hash = {}
each { |val| hash[val] = val }
hash.values
end
end
```
There is precedent in `Array`'s documentation for mentioning that a method is order-preserving, and it seems that `#uniq` should certainly do so.
----------------------------------------
Feature #11323: Documentation update on how uniq works / guarantee of order
https://bugs.ruby-lang.org/issues/11323#change-53235
* Author: Daniel Lo
* Status: Open
* Priority: Normal
* Assignee:
----------------------------------------
Greetings,
I was looking at Array.uniq and I was wondering how the code made the array unique.
There are 2 different possible outcomes for making an array unique.
For example:
[1,2,1]
The first value is kept and all subsequent duplicate values are removed: [1,2]
or
The array is made unique, order is not retained: [2,1]
Would the ruby team consider adding a guarantee of order (first seen/first kept) is adding this to the Array.uniq specification? This is what happens in practice (irb), having this as part of the specification would be nice.
I looked at the code http://ruby-doc.org/core-2.2.1/Array.html#method-i-uniq however, I wasn't able to determine exactly how it worked. :(
Thank you!
Regards,
Daniel Lo
--
https://bugs.ruby-lang.org/