[#7286] Re: ruby-dev summary 28206-28273 — ara.t.howard@...

On Thu, 2 Feb 2006, Minero Aoki wrote:

23 messages 2006/02/02
[#7292] ANDCALL / iff? / &? (was Re: ruby-dev summary 28206-28273) — mathew <meta@...> 2006/02/02

[#7293] Re: ANDCALL / iff? / &? (was Re: ruby-dev summary 28206-28273) — mathew <meta@...> 2006/02/02

mathew wrote:

[#7298] Re: ANDCALL / iff? / &? (was Re: ruby-dev summary 28206-28273) — James Britt <ruby@...> 2006/02/03

mathew wrote:

[#7310] Re: ANDCALL / iff? / &? (was Re: ruby-dev summary 28206-28273) — Evan Webb <evanwebb@...> 2006/02/07

I'm not sure we even need the 'with' syntax. Even if we do, it breaks

[#7311] Re: ANDCALL / iff? / &? (was Re: ruby-dev summary 28206-28273) — Eero Saynatkari <ruby-ml@...> 2006/02/07

On 2006.02.07 10:03, Evan Webb wrote:

[#7313] Re: ANDCALL / iff? / &? (was Re: ruby-dev summary 28206-28273) — Evan Webb <evanwebb@...> 2006/02/07

Umm, on what version are you seeing a warning there? I don't and never

[#7315] Re: ANDCALL / iff? / &? (was Re: ruby-dev summary 28206-28273) — Eero Saynatkari <ruby-ml@...> 2006/02/07

On 2006.02.07 14:47, Evan Webb wrote:

[#7316] Re: ANDCALL / iff? / &? (was Re: ruby-dev summary 28206-28273) — Evan Webb <evanwebb@...> 2006/02/07

I'd by far prefer it never emit a warning. The warning is assumes you

[#7305] Re: Problem with weak references on OS X 10.3 — Mauricio Fernandez <mfp@...>

On Sun, Feb 05, 2006 at 08:33:40PM +0900, Christian Neukirchen wrote:

28 messages 2006/02/05
[#7401] Symbols overlap ordinary objects, especially on OS X (Was: Re: Problem with weak references on OS X 10.3) — Eric Hodel <drbrain@...7.net> 2006/02/22

On Feb 5, 2006, at 5:05 AM, Mauricio Fernandez wrote:

[#7414] Re: Symbols overlap ordinary objects, especially on OS X (Was: Re: Problem with weak references on OS X 10.3) — Mauricio Fernandez <mfp@...> 2006/02/23

On Wed, Feb 22, 2006 at 02:21:24PM +0900, Eric Hodel wrote:

[#7428] Re: Symbols overlap ordinary objects, especially on OS X (Was: Re: Problem with weak references on OS X 10.3) — Tanaka Akira <akr@...17n.org> 2006/02/26

In article <1140968746.321377.18843.nullmailer@x31.priv.netlab.jp>,

[#7444] Re: Symbols overlap ordinary objects, especially on OS X (Was: Re: Problem with weak references on OS X 10.3) — nobu@... 2006/02/28

Hi,

[#7445] Re: Symbols overlap ordinary objects, especially on OS X (Was: Re: Problem with weak references on OS X 10.3) — Tanaka Akira <akr@...17n.org> 2006/02/28

In article <m1FDshr-0006MNC@Knoppix>,

[#7447] Re: Symbols overlap ordinary objects, especially on OS X (Was: Re: Problem with weak references on OS X 10.3) — Tanaka Akira <akr@...17n.org> 2006/02/28

In article <87irr047sx.fsf@m17n.org>,

[#7448] Re: Symbols overlap ordinary objects, especially on OS X (Was: Re: Problem with weak references on OS X 10.3) — Tanaka Akira <akr@...17n.org> 2006/02/28

In article <87vev0hxu5.fsf@m17n.org>,

[#7465] Re: Symbols overlap ordinary objects, especially on OS X (Was: Re: Problem with weak references on OS X 10.3) — "Evan Webb" <evanwebb@...> 2006/03/01

Just my quick 2 cents...

[#7468] Re: Symbols overlap ordinary objects, especially on OS X (Was: Re: Problem with weak references on OS X 10.3) — Tanaka Akira <akr@...17n.org> 2006/03/01

In article <92f5f81d0602281855g27e78f4eua8bf20e0b8e47b68@mail.gmail.com>,

[#7403] Module#define_method "send hack" fails with Ruby 1.9 — Emiel van de Laar <emiel@...>

Hi List,

12 messages 2006/02/22
[#7404] Re: Module#define_method "send hack" fails with Ruby 1.9 — George Ogata <g_ogata@...> 2006/02/22

Emiel van de Laar <emiel@rednode.nl> writes:

[#7406] Re: Module#define_method "send hack" fails with Ruby 1.9 — dblack@... 2006/02/22

Hi --

[#7442] GC Question — zdennis <zdennis@...>

I have been posting to the ruby-talk mailing list about ruby memory and GC, and I think it's ready

17 messages 2006/02/27

Module#define_method "send hack" fails with Ruby 1.9

From: Emiel van de Laar <emiel@...>
Date: 2006-02-22 10:57:58 UTC
List: ruby-core #7403
Hi List,

In trying to get rubygems working with 1.9 I ran accross an error
regarding the method "Module#define_method". Investigating further
using the ri documentation I found out that the sample code
(specifically the "send hack") doesn't work anymore with 1.9.

Can someone give me an indication of how things have changed. Perhaps
then we can update the documentation as well.

Thanks in advance.

Regards,

Emiel van de Laar



spitfire% ~/usr/bin/ri -v define_method
ri v1.0.1 - 20041108
spitfire% ~/usr/bin/ri define_method
--------------------------------------------------- Module#define_method
     define_method(symbol, method)     => new_method
     define_method(symbol) { block }   => proc
------------------------------------------------------------------------
     Defines an instance method in the receiver. The _method_ parameter
     can be a +Proc+ or +Method+ object. If a block is specified, it is
     used as the method body. This block is evaluated using
     +instance_eval+, a point that is tricky to demonstrate because
     +define_method+ is private. (This is why we resort to the +send+
     hack in this example.)

        class A
          def fred
            puts "In Fred"
          end
          def create_method(name, &block)
            self.class.send(:define_method, name, &block)
          end
          define_method(:wilma) { puts "Charge it!" }
        end
        class B < A
          define_method(:barney, instance_method(:fred))
        end
        a = B.new
        a.barney
        a.wilma
        a.create_method(:betty) { p self }
        a.betty

     _produces:_

        In Fred
        Charge it!
        #<B:0x401b39e8>

spitfire% cat define_method_example.rb
class A
 def fred
  puts "In Fred"
 end
 def create_method(name, &block)
  self.class.send(:define_method, name, &block)
 end
 define_method(:wilma) { puts "Charge it!" }
end

class B < A
 define_method(:barney, instance_method(:fred))
end

a = B.new
a.barney
a.wilma
a.create_method(:betty) { p self }
a.betty

spitfire% ruby -v define_method_example.rb
ruby 1.8.4 (2005-12-24) [i386-freebsd5]
In Fred
Charge it!
#<B:0x80760d0>

spitfire% ~/usr/bin/ruby -v define_method_example.rb
ruby 1.9.0 (2006-02-22) [i386-freebsd5.3]
In Fred
Charge it!
define_method_example.rb:6:in `Kernel#send': private method `define_method' called for B:Class (NoMethodError)
 from define_method_example.rb:6:in `A#create_method'
 from define_method_example.rb:19


In This Thread

Prev Next