From: Robert Klemme Date: 2005-01-15T05:01:12+09:00 Subject: Re: Duck Typing and automated Conversions "itsme213" schrieb im Newsbeitrag news:ORTFd.3354$Ta2.397@fe2.texas.rr.com... > > "Robert Klemme" wrote > >> > silly_example will not have other access to x, y >> > (*: since you did: str=str.to_str; count=count.to_int) >> >> Wrong, because to_str need not create a new instance: > > The fact that String#to_str returns self, and Fixnum.to_int returns self, > is > purely coincidental aliasing (from inside your method body). The original > parm-list variables might as well be anonymous. But it's aliasing nevertheless and thus the caller can't rely on that the instances he provides remain unchanged thinking that the body of the method never gets access to them. In fact, the aliasing might even be desired as object creations are rather expensive and people are likely to provide String instances where #to_str is needed. Of course you can view "original arguments" as anonymous but what difference would that make? I don't seem to get your point with this. Can you attempt another explanation? kind regards robert