[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