[#48729] [ANN] ruby 2.0.0-preview1 released — Yusuke Endoh <mame@...>
Japanese later; 日本語はあとで
Hi,
Hello Vit,
2012/11/6 Yusuke Endoh <mame@tsg.ne.jp>
[#48745] [ruby-trunk - Bug #7267][Open] Dir.glob on Mac OS X returns unexpected string encodings for unicode file names — "kennygrant (Kenny Grant)" <kennygrant@...>
[#48773] [ruby-trunk - Bug #7269][Open] Refinement doesn't work if using locate after method — "ko1 (Koichi Sasada)" <redmine@...>
(2012/11/03 10:11), headius (Charles Nutter) wrote:
(2012/11/03 10:36), SASADA Koichi wrote:
[#48774] [ruby-trunk - Feature #4085] Refinements and nested methods — "shugo (Shugo Maeda)" <redmine@...>
[#48819] [ruby-trunk - Feature #4085] Refinements and nested methods — "headius (Charles Nutter)" <headius@...>
[#48820] [ruby-trunk - Bug #7271][Assigned] Refinement doesn't seem lexical — "ko1 (Koichi Sasada)" <redmine@...>
[#48847] [ruby-trunk - Bug #7274][Open] UnboundMethods should be bindable to any object that is_a?(owner of the UnboundMethod) — "rits (First Last)" <redmine@...>
[#48882] [ruby-trunk - Feature #4085] Refinements and nested methods — "headius (Charles Nutter)" <headius@...>
[#48964] [Backport93 - Backport #7285][Assigned] some failures on RubyInstaller CI — "usa (Usaku NAKAMURA)" <usa@...>
[#48988] [ruby-trunk - Feature #7292][Open] Enumerable#to_h — "marcandre (Marc-Andre Lafortune)" <ruby-core@...>
[#48997] [ruby-trunk - Feature #7297][Open] map_to alias for each_with_object — "nathan.f77 (Nathan Broadbent)" <nathan.f77@...>
[#49018] [ruby-trunk - Feature #7299][Open] Ruby should not completely ignore blocks. — "marcandre (Marc-Andre Lafortune)" <ruby-core@...>
[#49078] Re: [ruby-cvs:44714] marcandre:r37544 (ruby_1_9_3): merge revisions r33453, r37542: — "U.Nakamura" <usa@...>
Hello,
[#49119] ID_ALLOCATOR ? — Roger Pack <rogerdpack2@...>
Hello.
Can I see ruby-prof code?
On Fri, Nov 9, 2012 at 11:14 AM, SASADA Koichi <ko1@atdot.net> wrote:
[#49196] [ruby-trunk - Feature #7322][Open] Add a new operator name #>< for bit-wise "exclusive or" — "alexeymuranov (Alexey Muranov)" <redmine@...>
[#49211] [ruby-trunk - Feature #7328][Open] Move ** operator precedence under unary + and - — "boris_stitnicky (Boris Stitnicky)" <boris@...>
[#49256] [ruby-trunk - Feature #7336][Open] Flexiable OPerator Precedence — "trans (Thomas Sawyer)" <transfire@...>
[#49267] [ruby-trunk - Feature #7340][Open] 'each_with' or 'into' alias for 'each_with_object' — "nathan.f77 (Nathan Broadbent)" <nathan.f77@...>
[#49268] [ruby-trunk - Feature #7341][Open] Enumerable#associate — "nathan.f77 (Nathan Broadbent)" <nathan.f77@...>
[#49282] Re: [ruby-cvs:44801] tenderlove:r37631 (trunk): * probes.d: add DTrace probe declarations. — "U.Nakamura" <usa@...>
Hello,
Hello,
2012/11/13 U.Nakamura <usa@garbagecollect.jp>:
[#49298] [ruby-trunk - Feature #7346][Open] object(...) as syntax sugar for object.call(...) — "rosenfeld (Rodrigo Rosenfeld Rosas)" <rr.rosas@...>
[#49320] [ruby-trunk - Feature #4085] Refinements and nested methods — "headius (Charles Nutter)" <headius@...>
[#49328] [ruby-trunk - Bug #7349][Open] Struct#inspect needs more meaningful output — "postmodern (Hal Brodigan)" <postmodern.mod3@...>
[#49340] bugs.ruby-lang.org - 500 error — Luis Lavena <luislavena@...>
Hello,
I've been unable to access it since morning EET (about 6 hours now).
It's almost 3am in Japan now, don't forget.
On Wed, Nov 14, 2012 at 2:46 PM, Zachary Scott <zachary@zacharyscott.net> w=
[#49354] review open pull requests on github — Zachary Scott <zachary@...>
Could we get a review on any open pull requests on github before the
2012/11/15 Zachary Scott <zachary@zacharyscott.net>:
Ok, I was hoping one of the maintainers might want to.
I could add my eyes to monitor the github issues/pull requests, if only to
On Thu, Nov 15, 2012 at 2:11 PM, Marc-Andre Lafortune
On Thu, Nov 15, 2012 at 1:01 PM, Luis Lavena <luislavena@gmail.com> wrote:
On Thu, Nov 15, 2012 at 1:06 PM, Zachary Scott <zachary@zacharyscott.net>
[#49370] [ruby-trunk - Bug #7358][Open] Wrong fd redirection on fork — "felipec (Felipe Contreras)" <felipe.contreras@...>
[#49416] make check: missing psych — Ramkumar Ramachandra <artagnon@...>
Hi,
On Fri, Nov 16, 2012 at 9:58 AM, Ramkumar Ramachandra
Luis Lavena wrote:
[#49463] [ruby-trunk - Feature #7375][Open] embedding libyaml in psych for Ruby 2.0 — "tenderlovemaking (Aaron Patterson)" <aaron@...>
On Sun, Nov 18, 2012 at 03:05:50AM +0900, vo.x (Vit Ondruch) wrote:
Dne 17.11.2012 21:19, Aaron Patterson napsal(a):
On 17 November 2012 21:34, V=EDt Ondruch <v.ondruch@gmail.com> wrote:
Hello,
[#49468] [ruby-trunk - Feature #7378][Open] Adding Pathname#write — "aef (Alexander E. Fischer)" <aef@...>
[#49479] [ruby-trunk - Bug #7379][Open] Unexpected result of Kernel#gets on Windows 8 — "phasis68 (Heesob Park)" <phasis@...>
[#49518] [ruby-trunk - Bug #7383][Open] Use stricter cache check in load.c — "funny_falcon (Yura Sokolov)" <funny.falcon@...>
[#49536] [ruby-trunk - Feature #7388][Open] Object#embed — "zzak (Zachary Scott)" <zachary@...>
[#49543] [ruby-trunk - Feature #7390][Open] Funny Falcon Threads — "zzak (Zachary Scott)" <zachary@...>
[#49558] [ruby-trunk - Bug #7395][Open] Negative numbers can't be primes by definition — "zzak (Zachary Scott)" <zachary@...>
[#49868] How to stop spam from ruby-core — Heesob Park <phasis@...>
Hi,
[#49949] [ruby-trunk - Feature #7426][Assigned] Update Rdoc — "mame (Yusuke Endoh)" <mame@...>
(2012/11/27 13:33), drbrain (Eric Hodel) wrote:
On Tue, Nov 27, 2012 at 12:57 AM, SASADA Koichi <ko1@atdot.net> wrote:
On Nov 26, 2012, at 10:09 PM, Luis Lavena <luislavena@gmail.com> wrote:
[#50092] [ruby-trunk - Feature #7434][Open] Allow caller_locations and backtrace_locations to receive negative params — "sam.saffron (Sam Saffron)" <sam.saffron@...>
[#50264] [ruby-trunk - Feature #7457][Open] GC.stat to return "allocated object count" and "freed object count" — "ko1 (Koichi Sasada)" <redmine@...>
[#50306] Towards a better process for changing Ruby — Magnus Holm <judofyr@...>
Hey folks,
What I'd like to see is primarily better communication and release
Hello Magnus,
Endoh-san,
[#50312] How to stop spam message from redmine.ruby-lang.org — Heesob Park <phasis@...>
HI,
Hi,
[#50372] [ruby-trunk - Bug #7476][Open] missing "IP_TRANSPARENT" constant for IP sockets. — "elico (Eliezer Croitoru)" <eliezer@...>
2013/2/24 ko1 (Koichi Sasada) <redmine@ruby-lang.org>:
[ruby-core:50365] Re: [ruby-trunk - Feature #4085] Refinements and nested methods
Your mail seems to be failed to synced into bugs.ruby-lang.org, so I
reply by e-mail.
2012/11/30 Yukihiro Matsumoto <matz@ruby.or.jp>:
> |So, the current behavior of main.using need not be changed, right?
> |Technically, the current behavior of main.using is not file scope.
> |The scope of main.using is from the point where using is *called at runt=
ime* to the end of that file.
> |For example,
(snip)
> In that sense, I don't think we need to change the behavior. What I
> meant by "file scope" was that refinement only available until end of
> the file.
I see.
> |* It may be better not to support nested module to simplify things.
> | I think support for nested modules are important for refinement users,=
but are not so important
> | for refinement authors.
>
> I don't think nested modules are important. We can drop them, at
> least for 2.0 to simplify things.
OK.
> |* It may be hard to implement efficiently activation of refinements whic=
h are defined after refine blocks.
> | For example,
> | module M
> | refine Array do
> | def to_json; "[" + map { |i| i.to_json } + "]" end
> | end
> |
> | refine Hash do
> | def to_json; "{" + map { |k, v| k.to_s.dump + ":" + v.to_json } =
+ "}" end
> | end
> | end
> | It may be better to limit refinement activation in refine blocks to re=
finements to be defined by the refine blocks theselves, to simplify things.=
If there's no refinement activation in refine blocks, recursive methods c=
annot be defined, so the refinement to be defined should be activated at le=
ast.
>
> I am not sure if I understand you correctly. I thought method look-up
> should be done in run-time. So only I can say it that refinement M
> will be available in both refine blocks in the above example.
In the current implementation the activated refinement table of a
module is shared by the code in that module definition
including refine blocks using cref.
However, to limit refinement activation only in refine blocks, cref
can't be used for that purpose, so a little hack is needed.
I think it's possible, at least in CRuby, to store hidden table in a
module, and share that table in refine blocks.
> |* Refinement activation in refine blocks may have the same problem as re=
finement-aware module_eval,
> | for example in the following code:
> |
> | F =3D Proc.new { 1 / 2 }
> | module M
> | refine Fixnum do def /(other) quo(other) end end
> | refine(Object, &F)
> | end
>
> Yes, but I consider its behavior implementation dependent.
> Fundamentally you cannot expect passing proc to lambda work correctly.
I see.
> | class C
> | def foo; p :C; end
> | end
> | module M1
> | refine String do def foo; p :M1; super; end; end
> | end
> | module M2
> | include M1
> | refine String do def foo; p :M2; super; end; end
> | end
> | using M2
> | C.new.foo #=3D> ?
> |
> |I think it's better to just calls M2 and C, not M1, to simplify things.
> |super chain is too complex here.
>
> I was thinking of M2->M1->C, but M2->C is simpler and acceptable.
M2->M1->C may be possible, but I worry that it makes super chain more compl=
ex.
> |Charles shown an edge case.
> |
> |module A; refine(Numeric) { def blah; puts 'A'; super; end }; end
> |module B; refine(Integer) { def blah; puts 'B'; super; end }; end
> |module C; refine(Fixnum) { def blah; puts 'C'; super; end }; end
> |using A; using B; using C
> |1.blah
> |
> |Currently, only C is called, but what should happen?
> |At first, I thought all blah should be called, but super in C is in scop=
e of neither A nor B,
> |it might be better not to call A and B.
> |
> |I'm starting to think it might be better to limit super to call only the=
original method in the refined class to simplify the spec.
>
> So do you mean refined method appear only once in method look-up chain?
I mean that all refinements appear in the method lookup 1.blah, but
the only first found one is used, and succeeding super in C outside
the scope of using are not affected by other refinements A and B.
make sense?
> |For example,
> |
> |class X; def blah; puts 'X'; end
> |module A; refine(X) { def blah; puts 'A'; super; end }; end
> |module B; refine(X) { def blah; puts 'B'; super; end }; end
> |module C; refine(X) { def blah; puts 'C'; super; end }; end
> |using A; using B; using C
> |1.blah
>
> X.new.blah # <=3D do you mean X here?
Yes.
> |Only C and X is called in the above code.
> |At first, I thought that stacking refinements and super chain are useful=
for aspect oriented programming.
> |But refinements have no local rebinding, so it might not be a real use c=
ase of refinements.
>
> Fair enough. If we can warn users for conflicted refinements like
> above, it's even better.
I'd like to hear other opinions, especially Charles' one.
--
Shugo Maeda