[#58120] [ruby-trunk - Feature #9070][Open] Introduce `---` as synonym of `end` keyword — "alexeymuranov (Alexey Muranov)" <redmine@...>
5 messages
2013/11/01
[#58149] [ruby-trunk - Feature #9076][Open] New one-argument block syntax: &. — "asterite (Ary Borenszweig)" <ary@...>
23 messages
2013/11/04
[#58259] [ruby-trunk - Feature #9099][Open] Train emoji lambda operator — "charliesome (Charlie Somerville)" <charliesome@...>
9 messages
2013/11/10
[#58312] [ruby-trunk - Feature #9107][Open] Introduce YES and NO as aliases of true and false — "gsamokovarov (Genadi Samokovarov)" <gsamokovarov@...>
5 messages
2013/11/13
[#58350] [ruby-trunk - Feature #9113][Open] Ship Ruby for Linux with jemalloc out-of-the-box — "sam.saffron (Sam Saffron)" <sam.saffron@...>
59 messages
2013/11/15
[#60851] Re: [ruby-trunk - Feature #9113][Open] Ship Ruby for Linux with jemalloc out-of-the-box
— Eric Wong <normalperson@...>
2014/02/19
Btw, I also hope to experiment with a slab allocator since many internal
[#62721] [ruby-trunk - Feature #9113] Ship Ruby for Linux with jemalloc out-of-the-box
— nobu@...
2014/05/24
Issue #9113 has been updated by Nobuyoshi Nakada.
[#62735] [ruby-trunk - Feature #9113] Ship Ruby for Linux with jemalloc out-of-the-box
— normalperson@...
2014/05/25
Issue #9113 has been updated by Eric Wong.
[#58391] [ruby-trunk - Bug #9119][Assigned] TestTime#test_marshal_broken_offset broken under MinGW — "luislavena (Luis Lavena)" <luislavena@...>
10 messages
2013/11/17
[#58396] [ruby-trunk - Bug #9121][Open] [PATCH] Remove rbtree implementation of SortedSet due to performance regression — "xshay (Xavier Shay)" <contact@...>
15 messages
2013/11/18
[#58404] [ruby-trunk - Feature #9123][Open] Make Numeric#nonzero? behavior consistent with Numeric#zero? — "sferik (Erik Michaels-Ober)" <sferik@...>
40 messages
2013/11/18
[#58411] [ruby-trunk - Bug #9124][Open] TestSocket errors in test-all on Arch 64-bit — "jonforums (Jon Forums)" <redmine@...>
14 messages
2013/11/18
[#58515] [ruby-trunk - Bug #9124] TestSocket errors in test-all on Arch 64-bit
— "jonforums (Jon Forums)" <redmine@...>
2013/11/23
[#58841] [ruby-trunk - Bug #9124] TestSocket errors in test-all on Arch 64-bit
— "jonforums (Jon Forums)" <redmine@...>
2013/12/04
[#58842] Re: [ruby-trunk - Bug #9124] TestSocket errors in test-all on Arch 64-bit
— Eric Wong <normalperson@...>
2013/12/04
"jonforums (Jon Forums)" <redmine@ruby-lang.org> wrote:
[#58452] [ruby-trunk - Bug #9133][Open] logger rotates log files more than expected — "no6v (Nobuhiro IMAI)" <nov@...>
8 messages
2013/11/21
[#58473] Object identity for string hash keys — Andrew Vit <andrew@...>
I'm not sure if this is a bug. I'm creating a hash like this:
5 messages
2013/11/21
[#58490] Re: [ruby-cvs:50910] drbrain:r43767 (trunk): * lib/rubygems: Update to RubyGems master 50a8210. Important changes — Tanaka Akira <akr@...>
2013/11/22 <drbrain@ruby-lang.org>:
4 messages
2013/11/22
[#58492] Re: [ruby-cvs:50910] drbrain:r43767 (trunk): * lib/rubygems: Update to RubyGems master 50a8210. Important changes
— Eric Wong <normalperson@...>
2013/11/22
Tanaka Akira <akr@fsij.org> wrote:
[#58496] [ruby-trunk - Feature #9140][Open] Allow each_with_index to get start index — "rosenfeld (Rodrigo Rosenfeld Rosas)" <rr.rosas@...>
8 messages
2013/11/22
[#58545] [ruby-trunk - Feature #9145][Open] Queue#pop(true) return nil if empty instead of raising ThreadError — "jsc (Justin Collins)" <redmine@...>
9 messages
2013/11/24
[#58599] [ruby-trunk - Bug #9159][Open] [patch] use rb_fstring for internal strings — "tmm1 (Aman Gupta)" <ruby@...1.net>
5 messages
2013/11/26
[#58653] [ruby-trunk - Bug #9170][Open] Math.sqrt returns different types when mathn is included; breaks various gems - this bug can be reproduced in Ruby 1.8 as well — "kranzky (Jason Hutchens)" <JasonHutchens@...>
7 messages
2013/11/28
[#58719] [ruby-trunk - Feature #5446] at_fork callback API — "tmm1 (Aman Gupta)" <ruby@...1.net>
6 messages
2013/11/30
[ruby-core:58326] [ruby-trunk - Feature #9108] Hash sub-selections
From:
"phluid61 (Matthew Kerwin)" <matthew@...>
Date:
2013-11-14 03:46:24 UTC
List:
ruby-core #58326
Issue #9108 has been updated by phluid61 (Matthew Kerwin).
=begin
In your proposal, what would happen with undefined keys? I see two reasonable options:
sounds = {dog: 'woof', cat: 'meow'}
# option 1:
sounds[:dog, :fish] #=> {dog: 'woof'}
# option 2:
sounds[:dog, :fish] #=> {dog: 'woof', fish: nil}
Of the two, I'd much prefer the first. A third option is to raise an exception, but that seems the least friendly of all.
If approved, I'd be +1 on the multiple-setter as well. I've had scenarios in which I'd have used it had it been available.
We should note the previous feature discussions (can't remember issue numbers) involving nested lookups, which also suggested a multiple-argument #[] semantic.
=end
----------------------------------------
Feature #9108: Hash sub-selections
https://bugs.ruby-lang.org/issues/9108#change-42921
Author: wardrop (Tom Wardrop)
Status: Open
Priority: Normal
Assignee:
Category:
Target version:
=begin
Hi,
I seem to regularly have the requirement to work on a sub-set of key/value pairs within a hash. Ruby doesn't seem to provide a concise means of selecting a sub-set of keys from a hash. To give an example of what I mean, including how I currently achieve this:
sounds = {dog: 'woof', cat: 'meow', mouse: 'squeak', horse: 'nay', cow: 'moo'}
domestic_sounds = sounds.select { |k,v| [:dog, :cat].include? k } #=> {dog: 'woof', cat: 'meow'}
I think a more concise and graceful solution to this would be to allow the Hash#[] method to take multiple arguments, returning a sub-hash, e.g.
domestic_sounds = sounds[:dog, :cat] #=> {dog: 'woof', cat: 'meow'}
I had a requirement in the current project I'm working on to concatenate two values in a hash. If this proposed feature existed, I could of just done this...
sounds[:dog, :cat].values.join #=> 'woofmeow'
You could do something similar for the setter also...
sounds[:monkey, :bat] = 'screech'
sounds #=> {dog: 'woof', cat: 'meow', mouse: 'squeak', horse: 'nay', cow: 'moo', monkey: 'screech', bat: 'screech'}
Concise, convenient and readable. Thoughts?
=end
--
http://bugs.ruby-lang.org/