I suspect that for many/most cases for which Perl5 does the trick, Perl5
will continue to the the best tool (and support for Perl5 is expected to
continue for the long term).
Perl 6 borrows some ideas from languages like Ruby (which itself borrowed
much from Perl) and seems to me a more fundamentally object-oriented
language than Perl5:
from Perl documentation:
Most (all?) built-in functions are now methods of built-in classes such as
String, Array, etc.
Was: my $len = length($string);
Now: my $len = $string.chars;
Was: print sort(@array);
Now: print @array.sort;
@array.sort.print;
The syntax will be tighter, cleaner, and in some cases more readable
(although I don't think Perl5 is all that hard to read if well-written).
Such syntactic (and other) changes should make writing Perl in a more
functional (lisp-ish?) style easier. Like spoken langauges, syntax in a
programming language influences what/how things might be expressed, even
though you can express the exact same facts in any language. Perl6 will, I
think, be one of those ultra-dynamic languages like Ruby that lead folks
to write little DSLs (domain-specific languages) to get a complex
domain-specific task accomplished.
The internals of Perl6 are said to be much cleaner that Perl5 and it will
run on the Parrot Virtual Machine which will also run many other languages
(like the Java Virtual Machine which can now run Ruby (JRuby) and Python
(Jython)). So expect to see projects incorporating many langauges in a
single code base.
I fully expect that Perl6 will gets lots of attention when officially
released and will generate lots of interest among the uber-geeks and will
result in some very useful innovations for the rest of us (the way Ruby
gave us Ruby-on-Rails). I've heard many folks say that learning a
langauge like Ruby made them a better programmer in all langauges, and I
am certain folks will say the same about Perl6.
Perl6 has recently hit something of a tipping point, so I am told, so I
expect we will be hearing MUCH more about it in the coming months.
And...for perl programmers not wanting to brave the new Perl6 world, Perl5
development continues apace -- Perl 5.10 was recently released with some
of the goodies back-ported from Perl6 ("say" and Hash::Util::FieldHash,
a.k.a. inside-out objects).
--Peter Keane
On Mon, 21 Jan 2008, Eric Lease Morgan wrote:
> I just got finished looking over some of the stuff related to Perl6,
> and now my brain hurts. :-( Just what will I be able to do better
> with this (completely) new version? Run faster? Jump higher? It might
> be cheaper for me to buy a pair of Keds.
>
> --
> Eric Lease Morgan
> University Libraries of Notre Dame
|