[Israel.pm] Fwd: [Telux] Next Meeting: "High-Level Programming Concepts Using Perl 6" on 22-March
Shlomi Fish
shlomif at iglu.org.il
Fri Mar 13 09:50:58 PDT 2009
On Friday 13 March 2009 12:59:11 Evgeny wrote:
> I for example rewrote a simplified version of Aslak's Cucumber in Perl
> instead of Ruby at work. I must tell you, Perl5 is much much less dynamic
> than Ruby is.
What do you mean by less "dynamic"? What have you tried to do with Perl 5 that
was better in Ruby, and how? I'm not claiming Ruby does not have its
advantages over Perl 5, but I'm interested to learn what did you find lacking
and to see if I can think of good ways to achieve it.
> Maybe Perl 6 is different.
>
Perl 6 is very different from Perl 5. In fact, perhaps my biggest problem with
it is that it's still called "Perl", because it's so radically different from
all the previous Perls. To paraphrase on what was originally said on Fortran
'90 - "Perl 6 is going to be a wonderful language. But it's not going to be
Perl.".
In any case, Perl 6 has very high aims, and aims to be more than just an
incremental improvement on Perl, Python, Ruby and friends, and be a huge
evolutionary (or even revolutionary) step forward.
> But what I noticed while writing it, is that knowing Ruby made me to try
> and bend Perl 5 into being a bit more "rubyish", like for example I was
> using anonymous functions. Sure they existed in Perl for ages now, but
> before I learned Ruby I don't think that I would even remember their
> existence when trying to solve a problem.
Anonymous functions have existed in Perl since perl-5.000 (and you really
shouldn't be using an earlier Perl). It is true that many Perl programmers
don't use them enough, or aren't very aware of them, but they are there, and
they work well, and they are well-supported. I recall reading
http://mitpress.mit.edu/sicp/ and a book about
http://www.shlomifish.org/lecture/Lambda-Calculus/ and trying to do that in
Perl, and it just worked. Up to that point, I didn't had the proper
understanding of their behaviour and power, either.
But then again, many Perl programmers didn't take the time to learn how to do
OOP in Perl, either.
>
> My point being, it is important to know how other languages approach
> problems. It makes you better at your "native" language and gives you
> tricks that other programmers might not commonly use, but they can save you
> time and solve complex problems.
Right.
>
>
> just my 2cc regarding why it's important to not ignore the other languages
> out there, even though we all love ruby and think its the "best".
Well, I wouldn't go so far as claiming that a certain language is the best
language. Different languages are good for different purposes, and as a friend
of mine once said "How can you make a programming language that would be the
best for every purpose, if you can't even make such a screw-driver?".
See for example:
http://www.shlomifish.org/philosophy/computers/when-c-is-best/
There are many factors (of many kinds) that affect the suitability of a
language for different types of tasks, and different languages are good for
different tasks. So far, Perl 5 is my favourite, but I'm still actively using
other languages, and if I need to improve the code in a codebase written in a
different language, I'm not going to re-implement it in Perl 5.
Regards,
Shlomi Fish
--
-----------------------------------------------------------------
Shlomi Fish http://www.shlomifish.org/
Parody on "The Fountainhead" - http://xrl.us/bjria
God gave us two eyes and ten fingers so we will type five times as much as we
read.
More information about the Perl
mailing list