From: Jamis Buck Date: 2003-12-10T06:46:02+09:00 Subject: Referencing writable attributes as block parameters I stumbled on this, almost by accident, and I'm curious as to whether this is a "feature" or a "bug". S = Struct.new( "S", :a ) s = S.new [ 1, 2, 3, 4, 5, 6 ].each { |s.a| puts s.a } This prints each element of the array, but what I'm curous about, is that the block actually assigns each value to s.a. I like this. However, I don't want to use this if it is liable to change. Is this simply a side-effect of the way block parameters are being handled right now? In other words, is this something that may potentially change in Ruby2? -- Jamis Buck jgb3@email.byu.edu ruby -h | ruby -e 'a=[];readlines.join.scan(/-(.)\[e|Kk(\S*)|le.l(..)e|#!(\S*)/) {|r| a << r.compact.first };puts "\n>#{a.join(%q/ /)}<\n\n"'