Interesting thread this, about LISP, encoding data structures and so on. I know Python has a separate module for queues, so I'll have to revisit why i.e. what're its capabilities over and above appending-to-end/popping-from-front of a list.
Back to my math thread, in my opinion kids are beset with sets, to the exclusion of other data structures, and this is a mistake. Except with the rollback of SMSG (aka "new math") even the union and intersection of sets is less dwelt upon, and that isn't right either (Venn Diagrams and SQL remain in the queue as deserving of repeated encounter). The exalted status of sets in 1960s USA grade school math traces back to Ivory Tower innovations by Russell/Whitehead et al in the UK, and their attempt to put arithmetic on a "secure footing" using set concepts. This footing became even more convoluted with Cantor. Wittgenstein, a hero of mine, was always in the dissenting camp, thinking set theory "underpins" arithmetic the way a painted foundation supports a painted tower, i.e. it doesn't really. I mean, one can always come up with elaborate new games, but to suppose you've gotten "under" 2 + 2 = 4 is just a metaphor gone haywire. Real life underwrites basic arithmetic, not the Ivory Tower. So it's not surprising, given all the Wittgenstein worship that seems to emanate from my corner, that I'm eager to make sets just one more data structure among many, and to use their unions and intersections as a lead-in to *other* significant and interesting data structures: queues, stacks, lists (linked and contiguous), trees and networks (hypertoons are networks). Purists might complain that I'm trying to ruin the basic math curriculum, by polluting it with CS concepts. But I say I'm trying to *rescue* set concepts from obscurity and neglect, by integrating them into a nutritious and wholesome diet featuring a wider variety of data structures. This is healthy stuff because: (a) we want kids from an early age to get in the habit of applying (general) abstractions to (special case) concrete situations [1] and (b) if you do this with Python, you get to make the experiences interactive, which tends to up the fun factor. Most kids can think of queues from their concrete experiences of waiting in line. "First come first serve" is another name for it. But then there's giving cuts. The kid in front of you is friends with this other kid, and so a kind of linked list thing happens, where you insert elements because of a pre-existing relationship. In a more formal/public arena, "giving cuts" isn't cool, e.g. at the bank or supermarket. So already we're into sociology and anthropology here. Kirby [1] Bucky's influence evident in this sentence -- another philosopher-hero I tend to lionize. _______________________________________________ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig