3 ms·
You should aim to learn languages that are different. The point of learning very different languages is that you can start generalizing in ways that make master
by tokipin 13y ago
You should aim to learn languages that are different. The point of learning very different languages is that you can start generalizing in ways that make mastery of future languages easier.
For example, Python has something called "list comprehensions". These might be interesting to a new programmer, but if you've used a functional programming language before, you have already used something more general (list comprehensions are essentially a syntatic sugar for a couple basic FP functions). Same with many other things like iterators/generators, which are a special case of coroutines. Etc.
So if you're familiar with functional programming, you can instantly understand Python's list comprehensions, whereas someone learning Python as one of their first languages might have trouble with them or might not be aware of the various constructs they can get away with.
So you really should seek out languages that are very different. As a point of comparison, I wouldn't consider Python, Ruby, Lua, Javascript to be very different from each other. You should try harder than that. But it does pay off and it does get easier as a result.