On Mon, Dec 13, 2010 at 12:33:24PM +0100, demerphq wrote: > On 13 December 2010 11:42, Abigail <abigail@abigail.be> wrote: > > On Mon, Dec 13, 2010 at 11:32:45AM +0100, Johan Vromans wrote: > >> [Quoting demerphq, on December 13 2010, 10:48, in "Re: [perl #80628] [P"] > >> > This is why i proposed using a $^THIS_SUB "magic tied var" for the purpose. > >> > >> Sounds like a very good idea to me. > >> > >> My main objection against __SUB__ is that __XXX__ things are currently > >> compile time constants, hence we must avoid introducing __XXX__ things > >> that are not. It doesn't contribute to Perl's popularity. > > > > > > I wouldn't say __END__ and __DATA__ (probably the most well-known, and > > certainly the most used __XXX__ thingies) are "compile-time constants". > > > > So, I don't really buy the "__SUB__ confuses me, because it isn't a > > compile-time constant" argument. > > > > __XXX__ things I know about, in order how often I see it used in code: > > > > __END__: Special token > > __DATA__: Special token > > __WARN__: Special literal for %SIG > > __DIE__: Special literal for %SIG > > > > <huge gap> > > > > __FILE__: Compile-time constant > > __LINE__: Compile-time constant > > > > > > Now, I'd prefer a short token, and I certainly don't mind having a variable, > > so $^SUB now wins for me. But __SUB__ doesn't shout "compile-time constant" > > to me. (What constant should it possibly be?) > > I think johan meant it in the sense that you dont expect to be able to > localize, or assign to an __IDENTIFIER__, which fits the use case for > this feature. > Good point. But that, IMO, would favour __SUB__ over $^SUB. The latter may give the suggestion you can assign to it, or localize, while "the current sub" isn't something I associate with as assignable from Perl land. AbigailThread Previous | Thread Next