[Python-ideas] Does jargon make learning more difficult?

Steven D'Aprano steve at pearwood.info
Thu Aug 23 11:02:31 EDT 2018


On Thu, Aug 23, 2018 at 05:55:13PM +1200, Greg Ewing wrote:
> Chris Angelico wrote:
> >for those who
> >know Greek, it's like calling something an "S-expression", which is
> >fairly obviously an abbreviation for something. ("Symbolic
> >expression", I think? Someone might correct me there.)
> 
> Yes, except that lambda is an even more arbitrary choice of
> letter -- as far as I know, it doesn't stand for anything.

If you go back far enough, pretty much all words and written symbols are 
arbitrary.

The word "dict" can be traced back to the Latin for "to say". Where did 
the Romans get their "dico" from? Linguists have extrapolated back to 
the hypothesised Proto-Indo-European word déyḱti (“to show, point out”). 

At this point, we can't even begin to guess where that word came from, 
but we can be sure that at some stage of human pre-history, it began as 
an arbitrary set of sounds. Many thousands of years later, it now means 
a hash table in Python.

The only difference between dict and lambda is time. Lambda's 
arbitrariness is less than a century ago, while dict's is lost in the 
mists of prehistory. Why should that make a difference to anyone but a 
linguist? As I posted earlier, lambda has become a standard term, used 
by boring, staid, non-functional languages like Java and C++.

There's nothing function-like about "lambda", but there's nothing 
function-like about "function" either.


-- 
Steve


More information about the Python-ideas mailing list