Moritz Lenz wrote:
Moving into the direction of immutability doesn't help with the problem
at hand -- it only helps here if we force everything(*) to be immutable,
or at least encapsulating every mutable object into special types, like
Monads in Haskell.
(*) ok, not everything, but everything that can be stored in an object
And I'd be very disappointed if Perl 6 turned into Haskell so late in
its development stage (remember that we have working compilers, a
growing number of modules and active users), especially since it's not
tailored to be a language that is tailored towards immutability.
Well, you do what works for you.
For my part, I have been evolving my new Muldis D language to be essentially
what Perl 6 might have been if it were tailored towards immutability.
In fact, I would say that is the single largest difference between the 2
languages. I started out more different, and over time came to see the light on
how other Perl 6 aspects are actually better for Muldis D than what I had before.
The next largest differences are the built-in database functionality, and the
fact that mine doesn't even have a hello-world implementation yet. But when I
have the time, you will see it run.
-- Darren Duncan