On Tue, Nov 7, 2017 at 7:21 AM, David Mertz <me...@gnosis.cx> wrote: > But like Raymond, I make most of my living TEACHING Python. >
and I make least of my living TEACHING Python ( :-) ),and: > I feel like the extra order guarantee would make teaching slightly harder. > I can't understand how this possibly makes python (or dicts) harder to teach -- you can simply say: "dicts insertion order is preserved" or not mention it at all -- I think most people kind of expect it to be preserved, which is why I (used to )always bring up the lack-of-ordering of dicts early on -- but I suspect I simply won't bother mentioning it if it's decided as a language feature. I'm sure he feels contrarily. It is true that with 3.6 I can no longer show > an example where the dict display is oddly changed when printed. > Exactly! I have a really hard time deciding how to handle this -- explaining that ordering is not guaranteed, but not being able to demonstrate it! And frankly, my students are all going to forget what I "explained" soon enough, and replace it with their experience -- which will be that dicts retain their order. But then, unordered sets also wind up sorting small integers on printing, > even though that's not a guarantee. > but it's not hard to make an easy example with order not preserved -- jsut start with a non order example: In [6]: s = {3,7,4} In [7]: s Out[7]: {3, 4, 7} or use other types... And "set" is a mathematical concept that has no oder, whereas the "dictionary" metaphor DOES have order... > Ordering by insertion order (possibly "only until first deletion") is > simply not obvious to beginners. > the "only until first deletion" part is really hard -- I hope we don't go that route. But I don't think insertion-order is non-obvious -- particularly with literals. > If we had, hypothetically, a dict that "always alphabetized keys" that > would be more intuitive to them, for example. Insertion order feels obvious > to us experts, but it really is an extra cognitive burden to learners > beyond understanding "key/Val association". > again, I don't think so -- I kind of agree if dicts did not preserve order in practice -- demonstrating that right out of the gate does help make the "key/Val association" clear -- but if you can't demonstrate it, I think we're looking at more confusion... Maybe I'll ask my students this evening -- this is the first class I'm teaching with py3.6 .... We've lived without order for so long that it seems that some of us now > think data scrambling is a virtue. But it isn't. Scrambled data is the > opposite of human friendly. > > exactly! -CHB -- Christopher Barker, Ph.D. Oceanographer Emergency Response Division NOAA/NOS/OR&R (206) 526-6959 voice 7600 Sand Point Way NE (206) 526-6329 fax Seattle, WA 98115 (206) 526-6317 main reception chris.bar...@noaa.gov
_______________________________________________ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com