Presumably there's some theory behind this, but this is a seeming
inconsistency in the language that I don't understand.
foo = "foo"
C = Class.new() {
def method1; puts foo; end
define_method(:method2) { puts foo }
}
C.new.method2 # prints "foo"
C.new.method1 # NameError: undefined local variable or method `foo'
Can someone explain why this is sensible behaviour?
cjs
--
Curt Sampson <cjs / cynic.net> +81 90 7737 2974 http://www.NetBSD.org
Make up enjoying your city life...produced by BIC CAMERA