I first encountered Python around 2000. At the time Perl was more popular in the circles I frequented, and TCL probably about as popular as Python (eggdrop[1] notwitstanding), but Python was growing steadily. I encountered Ruby in the late '00s (as others have noted it made its english-language debut almost a decade after Python started) and Lua was another contender during this time. My memory is that, at least outs…
Before Python got popular, Perl was the most similar popular language. Once I encountered Python, I felt, this is Perl, but done right.
There were so many "it can't possibly be that easy, but it is!" moments.
Let's write a function to add five to a number:
def add_five(num):
return num + 5
OK. So, can I pass that function as an argument to another function? def call(func, value):
return func(value)
call(add_five, 10)
=> 15
What? That worked?! And there was zero additional syntax, you just... do it?After a seemingly endless list of happy discoveries like that, I seriously rethought my idea of what programming languages could be, and ought to be.