[Edu-sig] Overloading (was Re: more on "variable names")
kirby.urner at gmail.com
Wed May 27 17:52:38 CEST 2009
On Wed, May 27, 2009 at 1:25 AM, Laura Creighton<lac at openend.se> wrote:
> I no longer think that the problem is that the '=' symbol is overloaded.
> I now believe that the problem is that when we, as teachers teach Python,
> we read a = b as
> 'a equals b'
Yeah, the word "overloaded" is itself overloaded in that it contains a
bias, as we often suppose overloading is a bad thing, like an
overloaded bus on a mountain road in Peru, whereas this might just be
the standard rural bus, being used efficiently, and it only *looks*
overloaded to the tourists.
With the doctrine of namespaces already in place ("philosophy for
children" thread), it's easier to say: "we have these bones or ivories
or mahjong chips that we might recycle endlessly in any number of
games and no, the little guy in chess (pawn) is not the same as the
little guy in Monopoly (hat), but you could use the pieces
interchangeably in a pinch".
Likewise, a $ in Perl is unlike a $ in $1.99 and a ** in Python is
rather like a ^ in BASIC. Look in the J dictionary (jsoftware.com)
and all these familiar symbols are "repurposed" once again. Do the
Great Lamba people to the north long to use an actual Greek lambda in
native LISP in place of any spelling-it-out in ASCII, now that we have
Unicode? I have no idea.
You can call it "overloading" but why not just call it "recycling"
i.e. taking symbols we've already grown accustomed to seeing, know how
to write, and having them mean something different in different
language games. "What a concept!" (sarcastic Monty Python voice,
annoying laugh track).
Being able to do this would imply that humans themselves are highly
adaptable around how they use symbols and quickly learn new rules even
where the idea of a "ball" is itself used over and over and over....
I agree this is the implication. Humans come into the world highly
auto-reprogrammable, often take delight in so doing.
Python comes with this OO mythos (mythology).
In some "focus groups" (imagine a teacher prep session) we might start
with Greek goddesses and gods as primary types, examining their
attributes, reinforcing some humanities stuff we'd like 'em to know
Like, I've been suspicious of this Apollo character lately, over what
he supposedly did to some Python, take comfort in having Athena
appreciate a wisdom Apollo may not get.
But hey, not everyone wants to cogitate in those terms, not saying the
Greek stuff (ala Disney's 'Hercules') is everyone's cup of tea.
However, using Python in the humanities, like in theater, is looking
promising. Given some high schools will send us grads already
so-equipped, as literature professors, we'll be able to dive in with
gusto, talking about "polymorphism" without starting from scratch.
Dr. Hugh Kenner was a trailblazer in this regard (Joyce scholar, Bucky
biographer, wrote a column for BYTE).
> and if we forbid that language usage of the word equals, and always said
> 'a is bound to b'
Or 'a tags what b tags' or... many synonymous expressions, which if
you hear a natural language teacher teach, you'll note is a common
technique, repeating the same thing using slightly different analogies
or characterizations each time, building up the "synonym base".
Humans rely on association and mnemonic short cuts e.g. I use "gnu
math" to help fuse the idea of running FOSS on commodity hardware in
algebra class (like "of course!").
> instead, then, in students who are learning their first programming language
> and don't come with C baggage, the problem will not arise, in much the
> same way that using * for multiplication does not cause a problem.
Imagine you're an algebra teacher, first day of class, and these 8
students (pretty small class -- that's why this is considered an elite
school) taking their seats already know Python.
You're not there to teach them Python but to leverage that knowledge
in service of transmitting mathematical concepts, in algebra, and in
algebra applied to geometry (i.e. we're not ignoring the graphical,
just because it's an algebra class, gotta do that group theory with
polyhedra stuff, play some fun computer games around that).
> So far this has worked, by my experiment has only been performed with 6
> students so far -- hardly a large enough experiemental set. And the
> experiment is flawed because it is still quite difficult for me to stop
> saying 'equals', so I still use the forbidden words every so often.
> Telling the sudents they can point and make faces at me every time I
> slip up does wonders for improving me.
I have all these meetings with teachers around Portland then package
it up for export to gnu math teacher circles in the Philippines and
places. Because OCN binds its Pythonic Math to a lot of niche market
geometric content, mostly using VPython, I'm imagining my teacher base
having assorted interests in common, which is borne out by much of the
I transplanted that little fragment of 3.x re Bell Curve to my gnu
math distribution vehicle, an archive at Drexel, knowing the teachers
pawing through there are likely already Python literate, aren't
especially interested in any evangelism for the language ("that's for
other people not us"):
OK, time for my first meeting of the day... I have this "neolithic
math" component in our place based curriculum. We keep going back to
this "cave man" setting, but lo and behold their inner circle know
quite a bit about world geography and navigation, per recent
scholarship (anyway Sumerians were "cave men" and calling it
"neolithic" is maybe more marketing than literal -- it's not
"prehistoric", not literally).
Sometimes we meet in Old Town, that part of Portland consider most
Chinese in character. An important aspect of our subculture out here
is our Pacific Rim identity, e.g. the Naito family, other Japanese
heritage. Seattle is a lot the same way.
So this business about working with Filipinos is hardly a new
development, was doing it with AFSC (a nonprofit) plus grew up there
(high school years). The fact that the RP, like the RSA, is highly
anglophone (English-speaking) makes these business relationships all
that much easier to form. I got both my XOs from a Chinese family
I've known since International School days.
Anyway, just filling ya'll in on some local geography, not sure how
many on this list have actually been to Portland ever, though I know
Laura, you have.
> Edu-sig mailing list
> Edu-sig at python.org
More information about the Edu-sig