I'd been trying to learn haskell for a while, (I have an obsession you see) but it somehow slipped away.
Then, recently I took a coursera course where I had to learn python comprehensions. Yesterday I got back to http://learnyouahaskell.com/ and it was a breeze! How? Learning Python Comprehensions gave me a new perspective, it got me to think of a problem more functionally.
Different programming languages solve problems with different ideas. So I went back to ProjectEuler, this time trying to solve the problems in a number of languages:
Take Project Euler Problem 1 : Find the sum of all the multiples of 3 or 5 below 1000.
In Perl it looks like this
my $A = 0;
foreach my $x (1..999)
$A = $A + $x if ($x % 3 == 0 or $x % 5 == 0);
With a Python comprehension:
A = sum([x for x in range(1000) if x % 3 == 0 or x % 5 == 0])
And With haskell:
main = print(prob1)
prob1 = sum [x | x <- [1..1000], x `mod` 3 == 0 || x `mod` 5 == 0 ]
So go ye! Learn more languages, even if you won't use it in production, it will give you a new and fresh perspective when writing production code.