kirby urner wrote:

More to the point is wanting to render pre-existing well-established
mathematics in a more accessible, hands-on, and intelligible
format, without losing any backward compatibility.

List comprehensions *illuminate* ideas about functions, do not
detract from them.  Creating a list of (domain, range) tuples
using "zip" is kind of interesting, gives a hands on component
to what's in the book.

I learned about list comprehensions from Mark Lutz's "Learning Python". Like everything in that book, it was slowly, carefully explained in terms so easy, even a non-programmer like myself could follow every step. I never used them much, however, because it just seemed like a complex syntax that I could do more easily with a simple for loop.

Then I read Michel Paul's "Manifesto", and it hit me like lightning. Of course, its just set notation - simple, elegant, and executable!! What could be simpler than saying the factors of N are all n <= N//2 such that N % n == 0. You don't need any "programming" to understand that.

This is how we will get kids (and teachers) into computational thinking. Not a massive overhaul of the curriculum, but little things like this that are clearly useful or elegant, or that lead to insight, or that are just fun and relevant to the subject being taught. Introducing programming into our existing classes needs to be done in a way that does not push aside current topics, does not require a big commitment, and does not threaten teachers who have seen only the intimidating side of programming.

-- Dave


_______________________________________________
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig

Reply via email to