From: Trans Date: 2007-01-05T00:32:29+09:00 Subject: Re: Little Things dblack@wobblini.net wrote: > Hi -- > > On Thu, 4 Jan 2007, Trans wrote: > > > > > dblack@wobblini.net wrote: > >> Hi -- > >> > >> On Thu, 4 Jan 2007, Rob Sanheim wrote: > >> > >>> If a ruby newbie tried "send" and saw it fail due to a private method, > >>> I bet once they saw "send!" in the docs or in irb they would > >>> immediately know how it works. Its aligns perfectly with many other > >>> things in the std lib, and fits perfectly with POLS. > >> > >> I'll add that if a nuby tries "send", said nuby had better realize > >> that it is using a fairly powerful technique and would be well advised > >> to educate itself fully about it. > > > > True for "instance sending" (eg funcall/send!/etc.), but is #send > > really all that? Isn't it just a dynamic dot? If what you say is true > > then why not: > > > > obj.call! message > > > > and > > > > obj.fcall! message > > I'm afraid I don't follow at all. > > > And extrapolating over the whole board of Ara's Pervasives: > > > > id! > > class! > > methods! > > ...etc... > > > > "!" means powerful! > > It means "dangerous", and I'm not sure what a dangerous id or class > method would be. I was just taking what you said to mean the #send itself was in the "dangerous" group. maybe I miss read you. but taking that as basis, i then though it's not really all that "dangerous", so I brought the idea of "!" down a notch to meet it. And it serves an extra needed purpose: adding a "!" helps overt over-rides. So "!" would get the added distiction of "don't override" in addition to "in place" and "dangerous". I'm not advocating this neccessarily btw (I think '!''s are ugly). I'm just exrapolating. T.