[#53072] [ruby-trunk - Feature #7994][Open] Make iterators pass an implicit named parameter `iteration` to the executed block — "alexeymuranov (Alexey Muranov)" <redmine@...>

10 messages 2013/03/01

[#53097] [ruby-trunk - Bug #8000][Open] "require 'tk'" segfaults on 64-bit linux with Tk 8.6 — "edmccard (Ed McCardell)" <edmccard@...>

25 messages 2013/03/02

[#53137] [ruby-trunk - Bug #8017][Open] Got segmentation fault on attempt to install ruby 2.0.0-p0 on Mac 10.6.8 via RVM — "adantel (Alex Filatau)" <filatau@...>

9 messages 2013/03/05

[#53168] [ruby-trunk - Bug #8034][Open] File.expand_path('something', '~') do not include home path — "rap-kasta (Pavel Manylov)" <rapkasta@...>

12 messages 2013/03/06

[#53199] [ruby-trunk - Bug #8040][Open] Unexpect behavior when using keyword arguments — "pabloh (Pablo Herrero)" <pablodherrero@...>

11 messages 2013/03/07

[#53203] [ruby-trunk - Feature #8042][Open] Add Addrinfo#socket to create a socket that is not connected or bound — "drbrain (Eric Hodel)" <drbrain@...7.net>

12 messages 2013/03/07

[#53248] Github commit log should not be used as references on redmine — Marc-Andre Lafortune <ruby-core-mailing-list@...>

Github commit log should not be used as references on redmine. E.g:

10 messages 2013/03/09

[#53386] [CommonRuby - Feature #8088][Open] Method#parameters (and friends) should provide useful information about core methods — "headius (Charles Nutter)" <headius@...>

14 messages 2013/03/13

[#53412] [CommonRuby - Feature #8096][Open] introduce Time.current_timestamp — "vipulnsward (Vipul Amler)" <vipulnsward@...>

34 messages 2013/03/14

[#53439] [ruby-trunk - Bug #8100][Open] Segfault in ruby-2.0.0p0 — "judofyr (Magnus Holm)" <judofyr@...>

22 messages 2013/03/15

[#53478] [ruby-trunk - Feature #8107][Open] [patch] runtime flag to track object allocation metadata — "tmm1 (Aman Gupta)" <ruby@...1.net>

20 messages 2013/03/16

[#53498] [ruby-trunk - Feature #8110][Open] Regex methods not changing global variables — "prijutme4ty (Ilya Vorontsov)" <prijutme4ty@...>

21 messages 2013/03/18

[#53502] [ruby-trunk - Bug #8115][Open] make install DESTDIR=/my/install/path fails — "vo.x (Vit Ondruch)" <v.ondruch@...>

11 messages 2013/03/18

[#53688] [ruby-trunk - Feature #8158][Open] lightweight structure for loaded features index — "funny_falcon (Yura Sokolov)" <funny.falcon@...>

27 messages 2013/03/24

[#53692] [ruby-trunk - Bug #8159][Open] Build failure introduced by Rinda changes — "luislavena (Luis Lavena)" <luislavena@...>

22 messages 2013/03/24

[#53733] [ruby-trunk - Bug #8165][Open] Problems with require — "Krugloff (Alexandr Kruglov)" <mr.krugloff@...>

12 messages 2013/03/26

[#53742] [ruby-trunk - Bug #8168][Open] Feature request: support for (single) statement lambda syntax/definition — "garysweaver (Gary Weaver)" <garysweaver@...>

9 messages 2013/03/26

[#53765] [ruby-trunk - Bug #8174][Open] AIX header file conflict with rb_hook_list_struct — "edelsohn (David Edelsohn)" <dje.gcc@...>

11 messages 2013/03/27

[#53808] [ruby-trunk - Feature #8181][Open] New flag for strftime that supports adding ordinal suffixes to numbers — "tkellen (Tyler Kellen)" <tyler@...>

10 messages 2013/03/28

[#53811] [ruby-trunk - Bug #8182][Open] XMLRPC request fails with "Wrong size. Was 31564, should be 1501" — "tsagadar (Marcel Mueller)" <marcel.mueller@...>

28 messages 2013/03/28

[#53849] [ruby-trunk - Feature #8191][Open] Short-hand syntax for duck-typing — "wardrop (Tom Wardrop)" <tom@...>

48 messages 2013/03/31

[#53850] An evaluation of 2.0.0 release — Yusuke Endoh <mame@...>

Let's look back at 2.0.0 release so that we can do better next time.

12 messages 2013/03/31

[ruby-core:53201] [CommonRuby - Feature #7747] Expanded API for Binding semantics

From: "pasvan (paster okan)" <bookingfirm@...>
Date: 2013-03-07 22:48:35 UTC
List: ruby-core #53201
Issue #7747 has been updated by pasvan (paster okan).


Penis büyütücü ilaç, draje yada yap olarak bilinen v-pills isimli ilaç v-pills yorumları yada siparişi hakkındaki haberi okumak için tıkla. Her erkek partnerinin düzenli cinsel hayatının olmasını, orgazmı tatmasını, mutlu bir kadın cinselliği yaşamasını ister. Cinselilişkinin kaliteli olması bir kadının isteksizliğini olumlu yönde etkileyebilir. Kalitesizlik sadece erkeklik organı büyüklüğü veya geciktirme spreyleri kullanılmadığı için erken boşalmanın yaşanması ile ilgili değildir. Kadın cinsel ilişkide orgazm olmalı, erkek ise ereksiyon yaşamalıdır. Kadına istek arttırıcı bayan damla yani afrodizyak parfüm almak yerine <a href="http://www.vpillssatis.gen.tr/kullanimi.html" title="v-pills kullanmanız">v-pills kullanmanız</a> daha iyi olucaktır. İnsan için beyin ve zeka konusunda yararlı vitamin olan <a href="http://www.nzt48turkiye.gen.tr/index.html" title="nzt 48">nzt 48</a> panik atak konusundada etkilidir. Nzt
  48 vitamini içerisinde en çok bulunan vitamin ise B vitaminidir. Kibarlı panax'ın sahibi mustafa eraslanın üretmiş olduğu ve içinde ginseng maddeside bulunan <a href="http://www.panaxtr.com/" title="panax">panax</a> %100 doğal ve % 100 bitkisel bir üründür. Panax siparişi vermek isterseniz sitemize tıklamanız yeterlidir.

----------------------------------------
Feature #7747: Expanded API for Binding semantics
https://bugs.ruby-lang.org/issues/7747#change-37369

Author: jballanc (Joshua Ballanco)
Status: Open
Priority: Normal
Assignee: 
Category: 
Target version: 


=begin
Currently, the only way to create a new instance of Binding is to get a copy of the current scope's binding, or ask some other object for its binding. In either case, the binding object returned always has semantics identical to the original binding. In other words, a binding object used with eval is capable of (not necessarily an exhaustive list):

* redefining methods on the binding target
* defining new methods on the binding target
* getting/setting instance variables
* getting/creating new constants

This feature proposal would introduce a new mechanism for creating a binding and adjusting its relationship with the source binding. For example, if you have a class (({Foo})) defined like so:

    class Foo
      def say
        puts "hello!"
      end
    end

Then you would be able to create a new binding that ((*won't*)) propagate new definitions to the parent binding like so:

    new_binding = Binding.new(Foo)
    new_binding.propagate = false
    new_binding.eval("def shout; puts 'HI!'; end")
    
    Foo.new.say #=> "hello!"
    Foo.new.shout #=> No Method Error
    new_binding.eval("Foo.new.say") #=> "hello"
    new_binding.eval("Foo.new.shout") #=> "HI!"

If, additionally, we introduce a way to merge or combine bindings, then this API could actually be used to implement refinements in pure Ruby like so (note I am also assuming that (({Binding#eval})) gains the ability to take a block):

    class Module
      def refine(klass, &block)
        @refined_bindings ||= {}
        refinement_binding = Binding.new(klass)
        refinement_binding.propagate = false
        refinement_binding.shadow = true
        refinement_binding.eval &block
        (@refined_bindings[self.name] ||= []) << refinement_binding
      end
    
      def using(mod)
        @refined_bindings[mod].each { |refinement| self.binding.merge(refinement) }
      end
    end

Following is the preliminary list of additional APIs I am tentatively proposing (though I expect this to change with additional discussion):

* (({Binding.new(an_object)})) - creates a new Binding object that "inherits" the binding of the argument; essentially equivalent to (({an_object.send(:binding).dup}))
* (({Binding#propagate}))/(({Binding#propagate=})) - boolean; determines whether new method, class, or Constant defs are propagated into the "parent" binding's scope
* (({Binding#shadow}))/(({Binding#shadow=})) - boolean; sets whether or not new values for existing methods/constants/variables can be set
* (({Binding#freeze})) - causes the Binding to capture all existing methods/constants/variables in scope at call time, and "disconnect" from the parent binding, so that any updates to definitions or values are no longer reflected into the "child" binding
* (({Binding#merge(other_binding)})) - combines the method/constant/variable bindings in (({other_binding})) with the receiver; effectively shadows the "parent" of (({other_binding})) within the receiver binding
=end



-- 
http://bugs.ruby-lang.org/

In This Thread