http://qs321.pair.com?node_id=261874


in reply to Re: Re^2: Perl 6 feature that scares me the most:
in thread Perl 6 feature that scares me the most:

Because, for example, alternatives might be preferred in real world projects. This means less perl programming for us :(

True. However, it won't be any worse than the current situation and Perl6 (or indeed Perl5) cannot be implemented in a sane manner on JVM or .NET. If you want to work on those VMs you will have to choose another language anyway.

Whether they will help us write better software remains to be seen.

It some areas I don't think there is any doubt that it will. For example, just the addition of submethod means that a whole bunch of code-reuse problems with Perl5 OO code just disappear or become a whole lot simpler.

So far, parrot cannot handle everything perl5 does.

True. However, there is nothing in the design of parrot that I can see that will make it slower than the Perl5 VM - and many things that will make it faster. I would be interested in knowing what features of Parrot you think will cause speed problems. I can't see any (and the developers seem to be spending a lot of time ensuring that there won't be.)

As far as typing goes, the Python authors argue that this one of the reasons for Pythons success. I tend to agree.

I do as well. If given a choice between a dynamically typed languages like Python/Perl/Ruby and a staticly typed system like Java/C++ I would choose the former any day of the week.

However, that's not the issue. Perl6 is not becoming a statically typed language. It has optional types that you can use if/when you need/want them. There are some techniques (e.g. multimethods) that you cannot have without some kind of type declarations.

Perl6's type system gives me more expressive power, and does not take anything away from the language. I can't see this as a bad thing.

It also might attract new people to Perl6 who are more used to coding in more strongly typed language.

The java docs state that any new JVM implementation should start with good ideea of how JNI will work. I think it's a good advice that the Parrot developers should take.

Why do you think they're not taking it?

As I said, a better way of interfacing to external code is one of the points on the perl6 architecture document and there is lots of active work in exploring what this new API needs to do.

Is it finished yet? No - but from what I can see good progress is being made.