* On Mon, Dec 15 2008, chromatic wrote: > On Monday 15 December 2008 14:44:42 Rafael Garcia-Suarez wrote: > >> 2008/12/15 chromatic <chromatic@wgz.org>: > >> > I think class BLOCK by itself is useful (descriptive and simpler syntax >> > for compile-time package scoping and @ISA setting), but it's definitely a >> > required feature before even considering at least the first element of >> > your list. Certainly it has more value than the similarly small syntax >> > change of allowing 'method where 'sub' is today. > >> The work on the method keyword was not only a way to introduce named >> parameters, but also aliasing and compile-time checking. (in a better >> way than prototypes) > > Is there a method keyword now? I was speaking hypothetically of a patch which > only added 'method' as a synonym for 'sub'. Just general commentary on the thread. The syntax extensions described are already implemented just fine outside of core (see, for example, MooseX::Declare). The same goes for things like final classes, attributes, etc. It would be silly to implement this stuff in core when it is already working great outside of core. I know it would be nice to say "perl has these features standard"... but I think it is about 10 years too late for that. Perl 5 is about modules -- if you want a feature, get it from the CPAN. Anyway, I think the best approach for core to take is to make things like Devel::Declare not break -- writing your own syntax extensions is a very nice feature that *does* belong in core. (rafl and mst are already going a great job keeping Devel::Declare stable; and things like B::Hooks are making it very easy to write things that were once reserved for the core or evil XS hackery in pure Perl.) Regards, Jonathan Rockway -- print just => another => perl => hacker => if $,=$"Thread Previous | Thread Next