[#33511] [Ruby 1.9-Bug#4108][Open] irb hangs on Windows with trunk — Heesob Park <redmine@...>
Bug #4108: irb hangs on Windows with trunk
[#33521] [Ruby 1.9-Feature#4111][Open] Add XLIST support to Net::IMAP — Geoff Youngs <redmine@...>
Feature #4111: Add XLIST support to Net::IMAP
[#33530] [Ruby 1.9-Bug#4113][Open] Cannot build trunk with MSVC. — Heesob Park <redmine@...>
Bug #4113: Cannot build trunk with MSVC.
[#33583] Initialization time — SASADA Koichi <ko1@...>
Hi,
[#33605] Why is SyncEnumerator in REXML? — Asher <asher@...>
in 1.8 SyncEnumerator is in lib/generator.rb; in 1.9 it is in lib/rexml/syncenumerator.rb
On Dec 6, 2010, at 11:09 PM, Asher wrote:
If that is the case, it would make sense historically, but doesn't seem to make much sense now, as SyncEnumerator doesn't seem to have any relation to REXML, even if REXML utilizes it.
[#33628] [Ruby 1.8-Bug#4132][Open] Socket.close attempting to close the socket twice — Claudio Villalobos <redmine@...>
Bug #4132: Socket.close attempting to close the socket twice
[#33640] [Ruby 1.9-Bug#4136][Open] Enumerable#reject should not inherit the receiver's instance variables — Hiro Asari <redmine@...>
Bug #4136: Enumerable#reject should not inherit the receiver's instance variables
Issue #4136 has been updated by Marc-Andre Lafortune.
Hi,
[#33648] Why doesn’t StringIO implement #freeze? — Nikolai Weibull <now@...>
IO implements #freeze, but StringIO doesn’t. What’s up with that?
Hi,
On Fri, Dec 31, 2010 at 03:09, Nobuyoshi Nakada <nobu@ruby-lang.org> wrote:
[#33656] [Ruby 1.9-Bug#4141][Open] Tk extension is not accepting any type of parameter combination — Luis Lavena <redmine@...>
Bug #4141: Tk extension is not accepting any type of parameter combination
Hi,
On Sun, Dec 26, 2010 at 10:05 PM, Hidetoshi NAGAI
[#33661] [Ruby 1.9-Feature#4145][Open] The result of UTF-16 encoded string concatenation — Heesob Park <redmine@...>
Feature #4145: The result of UTF-16 encoded string concatenation
Issue #4145 has been updated by Yui NARUSE.
[#33667] [Ruby 1.9-Bug#4149][Open] Documentation submission: syslog standard library — mathew murphy <redmine@...>
Bug #4149: Documentation submission: syslog standard library
Issue #4149 has been updated by mathew murphy.
[#33683] [feature:trunk] Enumerable#categorize — Tanaka Akira <akr@...>
Hi.
2010/12/12 "Martin J. Dst" <duerst@it.aoyama.ac.jp>:
Hello Akira,
2010/12/20 "Martin J. Dst" <duerst@it.aoyama.ac.jp>:
Hi!
2010/12/27 Marc-Andre Lafortune <ruby-core-mailing-list@marc-andre.ca>:
Hi!
[#33687] Towards a standardized AST for Ruby code — Magnus Holm <judofyr@...>
Hey folks,
On Sun, Dec 12, 2010 at 9:55 AM, Magnus Holm <judofyr@gmail.com> wrote:
On Dec 12, 2010, at 17:46 , Charles Oliver Nutter wrote:
On Sun, Dec 12, 2010 at 7:09 PM, Ryan Davis <ryand-ruby@zenspider.com>wrote:
(2010/12/13 1:54), Haase, Konstantin wrote:
(2010/12/13 9:06), Ryan Davis wrote:
On Sun, Dec 12, 2010 at 6:33 PM, Ryan Davis <ryand-ruby@zenspider.com> wrote:
On Dec 14, 2010, at 09:47 , Charles Oliver Nutter wrote:
On Tue, Dec 14, 2010 at 2:54 AM, Haase, Konstantin
[#33690] [Ruby 1.9-Bug#4153][Open] Minitest or ruby bug - wrong return code — Robert Pankowecki <redmine@...>
Bug #4153: Minitest or ruby bug - wrong return code
[#33735] [Ruby 1.9-Bug#4163][Assigned] RubyGems uses deprecated API: YAML.quick_emit. — Yui NARUSE <redmine@...>
Bug #4163: RubyGems uses deprecated API: YAML.quick_emit.
On Thu, Dec 16, 2010 at 04:46:33AM +0900, Yui NARUSE wrote:
[#33763] [Ruby 1.9-Bug#4168][Open] WeakRef is unsafe to use in Ruby 1.9 — Brian Durand <redmine@...>
Bug #4168: WeakRef is unsafe to use in Ruby 1.9
Issue #4168 has been updated by Kurt Stephens.
[#33779] [Ruby 1.9-Bug#4174][Open] 1F1E on rdoc tests — Kouhei Yanagita <redmine@...>
Bug #4174: 1F1E on rdoc tests
[#33801] [Ruby 1.9-Feature#4183][Open] [ext/openssl] Timestamp support — Martin Bosslet <redmine@...>
Feature #4183: [ext/openssl] Timestamp support
On Wed, Dec 22, 2010 at 03:19:12AM +0900, Martin Bosslet wrote:
[#33815] trunk warnflags build issue with curb 0.7.9? — Jon <jon.forums@...>
As this may turn out to be a 3rd party issue rather than a bug, I'd like some feedback.
Hi,
[#33818] [Ruby 1.9-Bug#4188][Open] minitest warnings in 1.9.3 — Aaron Patterson <redmine@...>
Bug #4188: minitest warnings in 1.9.3
[#33825] PATCH: REE fast-thread.patch: stack_free() not called in rb_thread_die(). — Kurt Stephens <ks@...>
http://code.google.com/p/rubyenterpriseedition/issues/detail?id=57
Similar technique might be relevant in MRI 1.9 if fiber/continuation
> Similar technique might be relevant in MRI 1.9 if fiber/continuation stacks
[#33833] Ruby 1.9.2 is going to be released — "Yuki Sonoda (Yugui)" <yugui@...>
-----BEGIN PGP SIGNED MESSAGE-----
On Thu, Dec 23, 2010 at 9:47 AM, Yuki Sonoda (Yugui) <yugui@yugui.jp> wrote:
On Thu, Dec 23, 2010 at 9:47 AM, Yuki Sonoda (Yugui) <yugui@yugui.jp> wrote:
[#33845] Getting involved in Ruby — Benoit Daloze <eregontp@...>
Hi dear Ruby core team !
[#33846] [Ruby 1.9-Feature#4197][Open] Improvement of the benchmark library — Benoit Daloze <redmine@...>
Feature #4197: Improvement of the benchmark library
Issue #4197 has been updated by Yui NARUSE.
[#33852] [Ruby 1.9-Bug#4199][Open] make test ruby-1.9.2-p0 failed on Solaris10 x86 — Dmitry Perfilyev <redmine@...>
Bug #4199: make test ruby-1.9.2-p0 failed on Solaris10 x86
[#33864] [Backport92-Backport#4200][Open] minitest 2.0.2 on trunk — Ryan Davis <redmine@...>
Backport #4200: minitest 2.0.2 on trunk
Issue #4200 has been updated by Ryan Davis.
[#33880] As platform mantainer - what are my boundaries? — Luis Lavena <luislavena@...>
Hello,
Hello,
On Sun, Dec 26, 2010 at 9:50 PM, U.Nakamura <usa@garbagecollect.jp> wrote:
On Mon, Dec 27, 2010 at 11:05 AM, Luis Lavena <luislavena@gmail.com> wrote:
Luis,
On Wed, Dec 29, 2010 at 1:31 AM, Yugui <yugui@yugui.jp> wrote:
[#33910] [Ruby 1.9-Feature#4211][Open] Converting the Ruby and C API documentation to YARD syntax — Loren Segal <redmine@...>
Feature #4211: Converting the Ruby and C API documentation to YARD syntax
On Dec 26, 2010, at 13:00, Loren Segal wrote:
Issue #4211 has been updated by Yui NARUSE.
On Mon, Dec 27, 2010 at 12:01:00PM +0900, Yui NARUSE wrote:
[#33923] [Ruby 1.9-Bug#4214][Open] Fiddle::WINDOWS == false on Windows — Jon Forums <redmine@...>
Bug #4214: Fiddle::WINDOWS == false on Windows
Issue #4214 has been updated by Luis Lavena.
[#33948] Multi-line comments — Rodrigo Rosenfeld Rosas <rr.rosas@...>
I was always curious about the reasoning Ruby doesn't support
On Mon, Dec 27, 2010 at 8:55 PM, Rodrigo Rosenfeld Rosas <rr.rosas@gmail.com
On 28-12-2010 01:54, Joshua Ballanco wrote:
[#33951] [Ruby 1.9-Bug#4217][Open] irb exits unexpectedly with non-ascii Regexp on Windows — Heesob Park <redmine@...>
Bug #4217: irb exits unexpectedly with non-ascii Regexp on Windows
Issue #4217 has been updated by Heesob Park.
[#33953] my redmine login is not working and wanted to submit a bug — deepak kannan <kannan.deepak@...>
hi,
[#34011] [Backport92-Backport#4228][Open] Backward gemspec compatibility change in r29663 broke rake gems — Luis Lavena <redmine@...>
Backport #4228: Backward gemspec compatibility change in r29663 broke rake gems
[#34023] ruby -h doesn't include --disable-gems — Ryan Davis <ryand-ruby@...>
Is there a reason why ruby -h doesn't show --disable-gems ?
2011/1/4 Ryan Davis <ryand-ruby@zenspider.com>:
On Tue, Jan 4, 2011 at 12:14 AM, KOSAKI Motohiro
[ruby-core:33869] Re: [feature:trunk] Enumerable#categorize
2010/12/20 "Martin J. Dst" <duerst@it.aoyama.ac.jp>:
>> Enumerable#categorize is more general than Enumerable#group_by.
>
> I know. I think it's way too general and difficult to understand.
I don't think it is too difficult.
When we create hash, it is natural that we can specify keys and values.
But we can specify only keys for Enumerable#group_by.
I feel it is restricted.
> This is one example. I don't deny that such examples exist. But I think they
> are not so frequent, and quite varied (i.e. there are many examples where
> one needs "almost something like this, but not quite exactly the same).
>
> I think that unless we can boil down your proposal to something simple that
> the average advanced Ruby programmer can understand and use without having
> to look it up or try it out in irb all the time, we have to invest some more
> time to find the right method.
>
> After all, group_by was adapted by Ruby 1.9 after a lot of field experience
> in Rails. And I have personally used it many times, as I think others have,
> too.
>
> On the other hand, do you have that much field experience? How many others
> have told you that they would have used categorize a few times already if it
> existed? (As opposed to those who have said that it's too complicated to
> remember what it does, and too easy to write the equivalent by hand if
> needed.)
I transformed CSV tables variously last several monthes in my work.
Enumerable#categorize is very useful for that.
(Unfortunately, I cannot tell you the exact examples though.)
For split a CSV table: enum.categorize {|rec| [split-key, ...] }.
For merge CSV tables: Enumerable#categorize can be used for
hash-join algorism as enum.categorize {|rec| [join-key, ...] }
http://en.wikipedia.org/wiki/Hash_join
For counting number for each category: enum.categorize(:op=>:+) {|e| [key, 1] }
Also various people asks about similar hash creation.
* [ruby-talk:351947]
{day1 => [[name_person1, room1], [name_person2, room2],
[name_person3, room2]],
day2 => [[name_person1, room1], [name_person3, room1],
[name_person2, room2]]}
to
[{room1 => [{day1 => [name_person1]},
{day2 => [name_person1, name_person3]}]},
{room2 => [{day1 => [name_person2, name_person3]},
{day2 => [name_person2]}]}]
This can be implemented as:
a = orig.map {|k, aa| aa.map {|e| [k, *e] }}.flatten(1)
pp a.categorize {|e| [e[2], e[0], e[1]] }
* [ruby-talk:347364]
[["2efa4ba470", "00000005"],
["2efa4ba470", "00000004"],
["02adecfd5c", "00000002"],
["c0784b5de101", "00000006"],
["68c4bf10539", "00000003"],
["c0784b5de101", "00000001"]]
to
{"2efa4ba470" => ["00000005", "00000004"],
"02adecfd5c" => ["00000002"],
"c0784b5de101" => ["00000006", "00000001"],
"68c4bf10539" => ["00000003"]}
This can be implemented as:
orig.categorize {|e| e }
* [ruby-talk:372481]
[["A", "a", 1], ["A", "b", 2], ["B", "a", 1]] to
{{"A" => {"a" => 1, "b" => 2}},
{"B" => {"a" => 1}}}
This can be implemented as:
orig.categorize(:op=>lambda {|x,y| y }) {|e| e }
* [ruby-talk:288931]
[["1", "01-02-2008", 5],
["1", "01-03-2008", 10],
["2", "12-25-2007", 5],
["1", "01-04-2008", 15]]
to
{"1" => {"01-02-2008" => 5, "01-03-2008" => 10, "01-04-2008" => 15},
"2" => {"12-25-2007" => 5}}
This can be implemented as:
orig.categorize(:op=>lambda {|x,y| y}) {|e| e }
* [ruby-talk:354519]
[["200912-829", 9],
["200912-893", 3],
["200912-893", 5],
["200912-829", 1],
["200911-818", 6],
["200911-893", 1],
["200911-827", 2]]
to
[["200912-829", 10],
["200912-893", 8],
["200911-818", 6],
["200911-893", 1],
["200911-827", 2]]
This can be implemented as:
orig.categorize(:op=>:+) {|e| e }.to_a
* [ruby-talk:344723]
a=[1,2,5,13]
b=[1,1,2,2,2,5,13,13,13]
to
[[0, 0], [0, 1], [1, 2], [1, 3], [1, 4], [2, 5], [3, 6], [3, 7], [3, 8]]
This can be implemented as:
h = a.categorize.with_index {|e, i| [e,i] }
b.map.with_index {|e, j| h[e] ? h[e].map {|i| [i,j] } : [] }.flatten(1)
* [ruby-talk:327908]
[["377", "838"],
["377", "990"],
["377", "991"],
["377", "992"],
["378", "840"],
["378", "841"],
["378", "842"],
["378", "843"],
["378", "844"]]
to
[["377", "838 990 991 992"],
["378", "840 841 842 843 844"]]
This can be implemented as:
orig.categorize(:seed=>nil, :op=>lambda {|x,y| !x ? y.dup : (x << "
" << y) }) {|e| e }
* [ruby-talk:347700]
["a", "b", "a", "b", "b"]
to
["a", "b"] [2, 3]
This can be implemented as:
h = orig.categorize(:op=>:+) {|e| [e, 1] }
p h.keys, h.values
* [ruby-talk:343511]
[1, 2, 3, 3, 3, 3, 4, 4, 5]
to
{"3"=>4, "4"=>2}
This can be implemented as:
h = orig.categorize(:op=>:+) {|e| [e, 1] }
p h.reject {|k,v| v == 1 }
I feel many people needs hash creation.
Enumerable#categorize support them.
> An additional thought: The example above starts with two-element arrays.
> Such two- or multi-element arrays are often used, but in many cases they are
> just an intermediate step, before creating objects. group_by seems more
> close to using objects (that may be why it is used a lot in Rails, where the
> basics of model classes are almost free). On the other hand, with
> multi-element arrays, I think that part of what "categorize" would do will
> often be handled before or after. Anyway, while we should not change Ruby so
> that it is too difficult to use multi-element arrays instead of objects,
> there is also no reason to create more methods that work better for
> multi-element arrays.
Ruby doesn't force us to create a class for programming.
I think this is a good aspect for scripting area.
> That may be true. But even if the average number of options for a Ruby
> method has slightly increased recently, your proposals still is way over
> average on the number of options, especially in an area (iterators on
> Enumerable) where options are few and far between.
It is natural because Enumerable is exist from old time.
I don't see any problem.
--
Tanaka Akira