Up until a few years ago, I ran the computer science department at a high-school. I provided support for the English teachers who taught *all* students -- but they taught things like the use of a word processor or the internet, and never covered the meaning of "lambda". I taught a computer applications course which was taken by only small fraction of the students (<10%) but there I taught things like the use of photo-editing software, creating web sites, and the use of simple databases; I never covered the meaning of "lambda". I also taught the programming class (taken by only a dozen or so students per graduating class) -- students learned basic concepts like variables, looping, up through fancier bits like a couple different sorting algorithms. But I didn't cover the meaning of "lambda". And I also taught the "AP" computer course (taken by an average of just 4 students per year!), in which I explained things like object oriented programming and recursion and managed to get the students to the level where they could work together as a group to write a moderately complex program, like a simple video game. And I didn't teach the meaning of "lambda", nor was it covered by the "AP" exam, which is supposed to be equivalent to a single college-level course in computer programming.
So I'd say that it's a pretty obscure name that most people wouldn't know. And besides, "def" isn't a "magic" word... it's an abreviation for "define"... I hope that any student who didn't understand a word as common as "define" wouldn't have graduated from our school. -- Michael Chermside -- http://mail.python.org/mailman/listinfo/python-list