From: Hal Fulton Date: 2005-08-25T11:04:07+09:00 Subject: Re: determining the attribute names of an object Mark Volkmann wrote: > Ah ... thanks for the explanation! Had I been paying attention, I > would have understood the distinction between attributes and instance > variables from reading pages 32-33 in Pickaxe 2. > > That still leaves the question of why Structs have "members" instead > of "instance variables" and why OpenStructs have neither. Well, Structs are not implemented by using instance variables (well, they are, but not the way you'd expect). If I were doing it, I would implement Structs so that there was a one-to-one correspondence between members and instance variables. Then this wouldn't be an issue. As for OpenStruct... have you looked at the code? :) Its author commented once that it was something he threw together in a few minutes as a toy, and it was amazing how many people used it. Issues like this led me to create SuperStruct -- but beware, it has bugs. If there is enough interest in it, I'll fix it. Hal