On Dec 12, 2007 8:35 AM, Andrew Harrington <[EMAIL PROTECTED]> wrote: > Nice wrapper class Kirby! > One thought: multiplying functions is another operation. I would > tend to reserve '*' for that, or you will be confusing of limited.
We say "another operation" but then we deliberately re-confuse them (the two symbols) in abstract algebra by just using the same symbol, suggesting it's all __mul__ under the hood, provided you've got closure, an identity, an inverse or whatever. Then you need __add__ so you can talk about rings and fields (two ops, connected by distributive feature -- __div__ and __sub__ are derivative ops, provided we have inverses). > Since the raised circle is not a python operator, it appears you need > to use a different, nonstandard composition symbol. Perhaps '%' (it > has a raise circle as part of it :-) ). Then have the Function class > do the basic arithmetic operations *and* composition. In my classroom, I'm doing the abstract algebra thing and showing how __mul__ takes on a meaning depending on namespace. Over here, it works with integers, over there, with functions, and over there, with some other set of elements. Arithmetic takes a back seat. This isn't Everyday Math or anything close (which isn't to say these can't co-exist, as they already do). Kirby _______________________________________________ Edu-sig mailing list [email protected] http://mail.python.org/mailman/listinfo/edu-sig
