[#8136] Confused exception handling in Continuation Context — "Robert Dober" <robert.dober@...>

Hi all

13 messages 2006/07/06

[#8248] One-Click Installer: MinGW? or VC2005? — "Curt Hibbs" <ml.chibbs@...>

I just posted this to ruby-talk. But I would also like to discuss this

33 messages 2006/07/18
[#8264] Re: One-Click Installer: MinGW? or VC2005? — Charlie Savage <cfis@...> 2006/07/19

From my experience using both tool chains on Windows (for the ruby-prof

[#8266] Re: One-Click Installer: MinGW? or VC2005? — "Curt Hibbs" <ml.chibbs@...> 2006/07/19

Tim, I'm going to top reply since your post was so long. I'm interested in

[#8267] Re: One-Click Installer: MinGW? or VC2005? — Charlie Savage <cfis@...> 2006/07/19

> Tim, I'm going to top reply since your post was so long. I'm interested in

[#8271] my sandboxing extension!! — why the lucky stiff <ruby-core@...>

I have (what feels like) very exciting news. I finally sat down to code up my

17 messages 2006/07/19

[#8430] Re: doc patch: weakref. — "Berger, Daniel" <Daniel.Berger@...>

> -----Original Message-----

19 messages 2006/07/28
[#8434] Re: doc patch: weakref. — Yukihiro Matsumoto <matz@...> 2006/07/29

Hi,

[#8436] Re: doc patch: weakref. — Daniel Berger <djberg96@...> 2006/07/29

Yukihiro Matsumoto wrote:

[#8437] Re: doc patch: weakref. — Mauricio Fernandez <mfp@...> 2006/07/29

On Sat, Jul 29, 2006 at 07:37:24PM +0900, Daniel Berger wrote:

[#8441] Inconsistency in scoping during module_eval? — "Charles O Nutter" <headius@...>

I have the following code:

18 messages 2006/07/30
[#8442] Re: Inconsistency in scoping during module_eval? — nobu@... 2006/07/30

Hi,

[#8443] Re: Inconsistency in scoping during module_eval? — "Charles O Nutter" <headius@...> 2006/07/30

Why does this:

[#8445] Re: Inconsistency in scoping during module_eval? — Yukihiro Matsumoto <matz@...> 2006/07/30

Hi,

[#8454] Re: Inconsistency in scoping during module_eval? — "Charles O Nutter" <headius@...> 2006/07/31

So to clarify...

Re: Inconsistency in scoping during module_eval?

From: "Charles O Nutter" <headius@...>
Date: 2006-07-31 01:55:59 UTC
List: ruby-core #8454
So to clarify...

in 1.8, constant scoping within a block is decided at compile time, and so
is scoped in the scope where the block is created. In this case, that means
all constants within a block, even a module_eval block will be defined at
the level at which module_eval was called.

in 1.9, constant scoping is determined at runtime, so this example would
scope the constant within the Foo module, and defined? BAZ at the top level
will return nil.

Is that about right?

On 7/30/06, Yukihiro Matsumoto <matz@ruby-lang.org> wrote:
>
> Hi,
>
> In message "Re: Inconsistency in scoping during module_eval?"
>     on Sun, 30 Jul 2006 20:39:08 +0900, "Charles O Nutter" <
> headius@headius.com> writes:
>
> |Why does this:
> |
> |class Foo
> |  BAZ = 1
> |end
> |
> |produce a different result than this:
> |
> |class Foo
> |end
> |Foo.module_eval {
> |  BAZ = 1
> |}
>
> Constant assignments follows static scoping in 1.8.  You have to use
> const_set method or switch to 1.9.
>
>
>                                                         matz.
>
>


-- 
Contribute to RubySpec! @ www.headius.com/rubyspec
Charles Oliver Nutter @ headius.blogspot.com
Ruby User @ ruby.mn
JRuby Developer @ www.jruby.org
Application Architect @ www.ventera.com

In This Thread