# [Edu-sig] Re: Teaching Middle-School Math with Python

**Matthias Felleisen
**
matthias@rice.edu

*Tue, 10 Oct 2000 16:47:41 -0500 (CDT)*

The book I mean is one you wrote, where you have two columns, with
the answer on the right (you cover it with your hand or a piece of
paper, and answer questions mentally, before sliding the paper down
and checking your answer). I was pretty sure car and cdr were covered
in that book. If not, I'm surprised that memory fails me.
Yes, *that* book covers car/cdr and friends. But that's from 1984 (or even
1974, if you count the first edition). The book that matters for teaching
in schools is "How to Design Programs".
Also, I'd think you'd _want_ to cover car and cdr when approaching
programming in Scheme
Why? That would be silly. Teaching in middle school and even high school
our objectives are to produce thinking kids who can use some programming
tool not finished Python/Scheme programmers.
If you come from a world of bits, bytes, loops and heavy syntax, learning
Scheme is difficult. If you come with an open mind, it's easy. We hear that
again and again.
My "math through programming" approach is to build on terminology already
evolved in ordinary math classes. I personally like talking about models
and views and would like to see more of this phased in.
In the meantime, what we already teach about are functions, relations,
compositions of functions, domain, range, sets, intersection, union... the
standard math topics, found in most text books the last 10-15 years.
This is what math teachers like to see -- familiar terms. Neither "model"
nor "view" is a prevalent term in that knowledge domain (again, I think
this should change).
Absolutely. Model and view is for us who know that Model is about
functions, relations, compositions, domain, range, sets, ... (see TLL).
View is about the stupid i/o crap that most languages impose on kids.
-- Matthias