in reply to Re^2: The Limitations of the CPAN
in thread The Limitations of the CPAN
Most Ruby objects I have seen fail to self-encapsulate their fields. For example, it would be unusual to see something like this:
Usually there would be raw references to "@name" all over the place. In perl, references to $self->{"name"} are typically considered bad style. If code inside and outside the class uses different means for accessing the fields, there is more danger of typos.class MyObj attr_accessor :name private :name= def initialize(myname) self.name = myname end # more stuff using name or self.name instead of @name end
But my main point was about the danger of declare-on-assignment, like this:
If "axx" was meant to be "axxx" there is no error message and the program does not always work as intended.axxx = 1 if (rare_condition_I_forgot_to_test) axx = 2 end print axxx,"\n"
|
---|